Python 有没有办法通过元素的子元素来定位元素?
我试图找到一个元素,该元素与其他元素没有区别,但其子元素与类中的其他元素不同。HTML:Python 有没有办法通过元素的子元素来定位元素?,python,python-3.x,selenium,xpath,Python,Python 3.x,Selenium,Xpath,我试图找到一个元素,该元素与其他元素没有区别,但其子元素与类中的其他元素不同。HTML: <div class="grid x4" id="grid"> <div><span class="fa fa-book" style="display: none;"></span></div> #⬅for example this element <div><span class="fa fa-birthday
<div class="grid x4" id="grid">
<div><span class="fa fa-book" style="display: none;"></span></div> #⬅for example this element
<div><span class="fa fa-birthday-cake" style="display: none;"></span></div>
<div><span class="fa fa-bolt" style="display: none;"></span></div>
<div><span class="fa fa-cube" style="display: none;"></span></div>
<div><span class="fa fa-coffee" style="display: none;"></span></div>
<div><span class="fa fa-car" style="display: none;"></span></div>
<div><span class="fa fa-birthday-cake" style="display: none;"></span></div>
<div><span class="fa fa-book" style="display: none;"></span></div>
<div><span class="fa fa-cube" style="display: none;"></span></div>
<div><span class="fa fa-bomb" style="display: none;"></span></div>
<div><span class="fa fa-car" style="display: none;"></span></div>
<div><span class="fa fa-bomb" style="display: none;"></span></div>
<div><span class="fa fa-cubes" style="display: none;"></span></div>
<div><span class="fa fa-coffee" style="display: none;"></span></div>
<div><span class="fa fa-cubes" style="display: none;"></span></div>
<div><span class="fa fa-bolt" style="display: none;"></span></div>
</div>
是的,您选择了具有xpath的父级 在这种情况下,当您知道父标记是div时,只需使用以下命令:
elements=browser。通过xpath('//span[@class=“fa-fa-book”]/parent::div'查找元素
如果您不知道确切的父项是什么,您可以在我添加时将标记名替换为
*
。单击()显示:元素[0]。单击()索引器:列表索引超出范围似乎没有这样的元素,但有is@Pautodidactic尝试执行元素[0]时遇到的唯一异常。单击()
是元素ClickInterceptedException
,除非等待元素可单击,否则这是有意义的。能否显示分配元素的代码
以及以后如何处理?如果只是查找第一个元素,只需使用查找元素
(单数),即可执行元素。单击()
。值得注意的是,您还可以使用“../”访问父元素
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time
browser = webdriver.Firefox()
browser.get('http://zzzscore.com/memory/')
elements = browser.find_elements_by_xpath('//span[@class= "fa fa-book"]')