我是来自日本的阿宽。 我刚开始自己用Selenium学习Python
如果有人帮我解决以下问题,我很高兴
“p”标签中包含的“数据”的数量总是会发生变化,所以不知道每次会显示多少数据。 数据4始终显示,但顺序已更改。 这些数据也被分配到同一类
例如,如果样本A数据4是第四个,但样本B是第二个。 请帮助我如何获取“数据4”
提前谢谢你的帮助
(sample A)
----------------------------------------
<div class="elist" id="test">
<ul class="ijkl">
<li class="elRow">
<div class="elRowTitle">
<p>Code1</p>
</div>
<div class="elRowData">
<p>Data1</p>
</div>
</li>
<li class="elRow">
<div class="elRowTitle">
<p>Code2</p>
</div>
<div class="elRowData">
<p>Data2</p>
</div>
</li>
<li class="elRow">
<div class="elRowTitle">
<p>Code3</p>
</div>
<div class="elRowData">
<p>Data3</p>
</div>
</li>
<li class="elRow">
<div class="elRowTitle">
<p>Code4</p>
</div>
<div class="elRowData">
<p>Data4</p>
</div>
</li>
</ul>
</div>
----------------------------------------
(sample B)
----------------------------------------
<div class="elist" id="test">
<ul class="ijkl">
<li class="elRow">
<div class="elRowTitle">
<p>Code1</p>
</div>
<div class="elRowData">
<p>Data1</p>
</div>
</li>
<li class="elRow">
<div class="elRowTitle">
<p>Code4</p>
</div>
<div class="elRowData">
<p>Data4</p>
</div>
</li>
</ul>
</div>
----------------------------------------
我为示例A和B使用“find_elements_by_xxxxx”方法编写了以下脚本,但没有起作用
from selenium import webdriver
browser = webdriver.Chrome('chromedriver.exe')
elem_ItemCodes = driver.find_elements_by_tag_name('div')
elem_ItemCodes2 = elem_ItemCodes.find_elements_by_class_name('elRowData')
elem_ItemCode = elem_ItemCodes2[3].text
print(elem_ItemCode)
您可以使用父对象作为参考
xpath等价物将是:
您的方法是正确的,但要做一些更改,如:
文本位于p标记中,xpath中的索引从1开始,而不是从0开始
相关问题 更多 >
编程相关推荐