我试图找到一个与其他元素没有什么不同的元素,但是它的子元素与类中的其他元素有所不同。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-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>
看看the website可能会有所帮助。以下代码可以找到子元素,但是仍然可以找到元素(不是子元素)?
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"]')
答案 0 :(得分:1)
是的,您选择了具有xpath的父母 在这种情况下,当您知道父标记是div时,请使用以下代码:
elements = browser.find_elements_by_xpath('//span[@class= "fa fa-book"]/parent::div')
如果您不知道确切的父级,则可以用*
替换标签名