【发布时间】:2021-10-07 15:29:29
【问题描述】:
我有html结构:
<div class="parent" data-index="0"><div class="sub">...</div></div>
<div class="parent" data-index="1"><div class="sub">...</div></div>
当我单击某个父元素并且所有子元素更改类时,如下所示:
<div class="parent selected" data-index="0"><div class="sub selected">...</div></div>
<div class="parent" data-index="1"><div class="sub">...</div></div>
无论是否单击元素,我都想用 selenium 遍历所有父元素及其子元素 现在我正在这样做:
for i in range(n):
parent= driver.find_element_by_xpath(f"//div[@class='parent' and @data-index='{i}']")
for elem in parent.find_elements_by_xpath("./div"):
do_something(elem)
但是这不会捕获被点击的父元素。
我还尝试将 xpath 更改为 "//div[starts-with(@class,'parent') and @data-index='{i}']",这也捕获了单击父元素。
但随后parent.find_elements_by_xpath("./div") 返回空列表
我不确定我做错了什么。我期待着任何建议。 提前致谢。
【问题讨论】: