这是html chunk:
<tbody>
<tr>
<td><td>
<td>
<img src="../imgs.gif">
<td>
<td><td>
<td><td>
<td><td>
</tr>
</tbody>
我想迭代&lt; td&gt; 属性和获取&lt;的索引位置img&gt; 属性。在这种情况下,输出应为“1”。
尝试了很多xpath策略,包括index-of(),count(),etree等。
我怀疑,以下情况应该接近。
from selenium import webdriver
chrome_path = r"E:\chromedriver_win32\chromedriver.exe"
browser = webdriver.Chrome(chrome_path)
td = browser.find_element_by_xpath("//tbody//tr//td")
target = td.find_element_by_xpath("*[. = '../imgs.gif']")
children = td.find_elements_by_xpath("*")
print children.index(target)
答案 0 :(得分:1)
如何识别图像并计算前面的td兄弟并为其添加一个。
$x("count(//img/parent::td/preceding-sibling::td) + 1")
答案 1 :(得分:0)
尝试了一种有效的方法。
html = browser.page_source
tree = lxml.html.fromstring(html)
re = tree.xpath("//tbody//tr//td")
for i in range(0, len(re)):
res = re[i].xpath(".//img//@src")
for img in res:
print repr(img)
print "img number in list:", i