[英]Find element with python selenium
我怎樣才能找到像 html 這樣的元素:
<div class="A">
<div class="B">
<div class="D"> 4 </div> < --- I NEED TO GET NUMBER
<div></div>
</div>
<div>
<div></div>
</div>
</div>
有一堆 class="A",但不是所有都有 class="B"!
我已經得到了 object 中的每個 class “B”,例如:
elements = driver.find_elements_by_class_name("B")
它運作良好!
但是,當我對 'elements' 的每個元素執行 'for' 時:
number = int(element.find_element_by_xpath("/div[@class='D']").text)
出現錯誤消息“無法使用 xpath 表達式定位元素...不是有效的 XPATH 表達式。”
您的 XPath 無效,因為它缺少/
/div[@class='D']
應該
//div[@class='D']
^ added
在這里使用 CSS 選擇器可能更容易
.A>.B>.D
代碼
elements = driver.find_elements_by_css_selector(".A>.B>.D")
如果只有其中一個或者您只想要第一個,則可以使用.find_element()
代替並跳過循環。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.