繁体   English   中英

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

[英]Unable to locate element using selenium webdriver in python

我想在一个名为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']

PS我是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()

我遇到了这个问题和关于窗口大小的问题。 因为当窗口大小很小时,对象的位置发生了变化,所以我使用 driver.maximize_window() 然后我使用 driver.find 方法它可以正常工作。

在打开链接的命令后添加:

driver.maximize_window()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM