python - 无法在python中使用selenium webdriver定位元素

标签 python selenium xpath

我想在一个名为 http://elegalix.allahabadhighcourt.in 的网站上做一些自动化测试.我正在使用以下 python 代码单击上述网站上名为“高级”的按钮:

代码#

from selenium import webdriver
driver = webdriver.Chrome('./chromedriver')
driver.get('http://elegalix.allahabadhighcourt.in')
driver.set_page_load_timeout(20)
driver.maximize_window()
driver.find_element_by_xpath("//input[@value='Advanced']").click()

错误#

selenium.common.exceptions.NoSuchElementException: Message: Unable to locate element: //input[@value='Advanced']

P.S 我是 python 编程的新手。我尝试了 xpath 的不同变体,并尝试使用其他 find_element_by 方法,但似乎都无法在此网站上工作...我在 Firefox 浏览器上也遇到类似的错误...

最佳答案

因为你要找的元素在frame里面,先切换到frame再找元素

from selenium import webdriver
driver = webdriver.Chrome('./chromedriver')
driver.get('http://elegalix.allahabadhighcourt.in')
driver.set_page_load_timeout(20)
driver.maximize_window()
driver.switch_to.frame(driver.find_element_by_name('sidebarmenu'))
driver.find_element_by_xpath("//input[@value='Advanced']").click()
driver.switch_to.default_content()

关于python - 无法在python中使用selenium webdriver定位元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44661187/

相关文章:

Python请求: "IndexError: list index out of range"

python - 如何对每一组pandas groupby应用不同的功能?

java - 在Java中的BrowserMob中仅获取POST请求/响应

javascript - argument[0].click() 不适用于 selenium 中的选择选项

xpath - xQuery如何在路径表达式中使用变量

python - 如何在预定义范围内生成随机数,在 R/Python 中总和为固定数

python - 如何更改自定义用户模型的经理

java - 如何使用java将phantomjs连接到selenium

xml - 没有特定可选属性的节点的 XPath 选择

xml - 如何使用 XPath 和 XSLT 处理一组兄弟节点并根据其中两个兄弟节点处理特定的兄弟节点子集