Selenium NoSuchElementException 下拉菜单

如何在 Python 中使用 Selenium 解决 NoSuchElementException 错误消息?我正在尝试从下拉菜单中选择报告类型,并在运行此代码后:


 from selenium.webdriver.support.select import Select


 driver = webdriver.Chrome()


 driver.get("https://examplehtml.com/gims/app/reports")


 ##Report type


 driver.find_element_by_xpath('//*[@id="reportType"]').send_keys("Power 

 Report")

这会插入“Power Report”一词,但它不会像我手动选择报告类型那样选择和向前移动页面,我认为这是因为 NoSuchElementException 错误。为什么找不到元素以及如何解决此错误。我对 Selenium 还很陌生,所以任何建议都会有所帮助。


提前致谢!


阿晨1998
浏览 139回答 2
2回答

一只名叫tom的猫

我想您需要使用您导入的 Select 类。因此,如果您的 HTML 如下所示:<select>&nbsp; <option value="1">Power Report</option>&nbsp; <option value="2">Other Report</option></select>..然后我会试试这个代码:e = driver.find_element_by_xpath('//*[@id="reportType"]')Select(e).select_by_value('1').. 如果下拉元素是 HTML 选择元素。

梦里花落0921

请确保您要查找的元素可见。Selenium 无法处理隐形元素。如果您想要的元素在下拉菜单中,首先您需要下拉菜单。然后,再次尝试查找该元素。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java