![](/img/trans.png)
[英]How to find an element (button) without the ID, Value and Type using selenium?
[英]find submit button in selenium without id
我有一個按鈕
<input type="submit" class="button button_main" style="margin-left: 1.5rem;" value="something">
我無法通過 ID 或名稱找到它,需要提交表格。
我嘗試這樣做:或者,WebDriver 在每個元素上都有方便的方法“提交”。 如果您在表單中的元素上調用 this,WebDriver 將遍歷 DOM,直到找到封閉的表單,然后調用提交。 如果元素不在表單中,則會引發 NoSuchElementException: element.submit() http://selenium-python.readthedocs.org/navigating.html
但這也找不到提交選擇器。
想法?
這里有很多選擇,僅舉幾例:
如果單獨的類是唯一的,您可以使用
driver.find_element_by_css_selector(".button_main").click()
如果 class + value 組合是唯一的,則可以使用:
driver.find_element_by_css_selector(".button_main[value='something']").click()
您還可以使用 xpath:
driver.find_element_by_xpath("//input[@type='submit' and @value='something']").click()
如果這些都不起作用(即它們不是唯一標識按鈕),請查看按鈕上方的元素(例如<form
)並以格式提供 xpath:
driver.find_element_by_xpath("//unique_parent//input[@type="submit" and @value='something']").click()
我推薦 xpath chrome 擴展程序,有了它,您將能夠通過運行擴展程序並按住 Shift 鍵單擊您想要此 chrome 擴展程序的元素來獲取路徑https://chrome.google.com/webstore/detail/xpath-helper/ hgimnogjllphhhkhlmebbmlgjoejdpjl
您可以嘗試使用 XPath 表達式或 CSS 選擇器(如 input[type="button"])查找元素,然后單擊該元素。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.