好吧,我有一個帶有3個選項卡的iframe。在每個選項卡上都有一個具有相同ID,類別但不同值的元素。我應該如何分別找到他們每個人?Selenium/python - 定位一個具有相同ID的元素
回答
首先,請確保您知道如何deal with iframes with Selenium,並且它不是您的第一個阻擋者。
然後回答你的問題,你可以:
使用XPath選擇:
*[@id="tabid"][1]
將選擇id爲tabid
的第一要素。*[@id="tabid"][2]
將選擇ID爲tabid
的第二個元素。- 等
使用CSS選擇:
#tabid:nth-child(1)
#tabid:nth-child(2)
- 等
更具體地說Tab1有一個button1(id = submit,value = xx)Tab 2有一個button2(id = submit,value = xy),..我如何找到例如:button 2? – dzvert
'// * [@ id =「tabid」] [2]/button [@ id ='submit']'或直接輸入'// * button [@ id ='submit'] [2]'。 –
我試過了:driver.find_element_by_xpath(「// * input [@ id ='submit'] [2]」)。click()但是我正在獲取語法錯誤 – dzvert
- 1. 識別具有相同ID的元素
- 2. Codeception檢查具有相同定位器的幾個元素
- 3. 在兩個具有其他id的div元素中有兩個具有相同id的元素是否正常?
- 4. JQuery - 下一個元素和具有相同類的元素
- 5. Selenium - Xpath定位具有不同ID的元素
- 6. 具有相同ID的2個元素的Mysql樣本
- 7. 將不同的元素傳遞給一個具有相同id的Javascript函數
- 8. jquery匹配具有相同id /類的多個元素
- 9. 具有相同ID導致錯誤的多個HTML元素
- 10. 選擇具有相同ID的多個元素 - WebDriverJS
- 11. 具有相同ID的多個元素得到名稱
- 12. 用jQuery列出每個具有相同ID的DIV元素
- 13. MVC3 - jQuery datepicker當多個元素具有相同的ID
- 14. 更改具有相同ID的多個元素
- 15. 具有相同ID的兩個XML元素
- 16. 具有相同z-index的絕對定位元素:哪一個元素位於頂部?
- 17. 選擇的元素具有相同的值,但ID不同
- 18. 遍歷具有相似ID的元素
- 19. 定位網頁元素具有相同名稱
- 20. 如何更改具有相同ID的所有元素javascript/html?
- 21. 爲所有具有相同ID的元素初始化Hammer.js
- 22. jQuery - 選擇具有相同ID的組的最後一個元素
- 23. jQuery的元素具有相同的類另一個元素的兩個類
- 24. 讀取一個文件並處理具有相同ID的元素
- 25. 從兩個具有相同ID的HTML元素之一提取值
- 26. 具有相同父元素的兩個元素
- 27. 的Javascript CONCAT並覆蓋其中元素具有相同的ID
- 28. 設置具有相同ID的元素的innerHTML
- 29. JQuery - 獲取具有相同類名的div元素的id
- 30. 一個頁面包含2個具有相同「id」的元素,我如何找到我需要的元素?
可能使用XPath或CSS。如果可能的話,提供所有三個的'html' – Saifur
值得考慮:同一個頁面上的'id',通常被認爲是一個錯誤。 – SiKing
您應該考慮更改HTML以避免根據HTML規範重複標識。 – segalaj