python - 无法定位网页元素

标签 python selenium-webdriver

我正在尝试在此页面中找到“创建您的亚马逊帐户”按钮: log in page

我尝试了很多代码来定位并点击按钮,错误总是“NoSuchElementExcepetion,无法定位元素”

find_element_by_xpath("//*[id='createAccountSubmit']")

find_element_by_xpath("//*[id='auth-create-account-link']")

find_element_by_xpath("//*[tabindex='6']")

find_element_by_xpath("//*[class='a-button-inner']")

find_element_by_xpath("//*[class='a-button-text']")

find_element_by_xpath("//*[class='a-button-text']")

如何找到并单击该按钮。

最佳答案

我会避免使用 XPath,对于表单中具有 ID 的元素更是如此。 您应该使用这些选择器轻松找到该元素:

driver.find_element_by_xpath("//*[@id='createAccountSubmit']")

或者

driver.find_element_by_id("createAccountSubmit")

或者

driver.find_element_by_css_selector("#createAccountSubmit")

或者

driver.find_element_by_css_selector("a.a-button-text")

您可以查看this link了解获取页面上元素的不同方法。 我建议尽可能使用 CSS 选择器,而不是 XPath。

希望有帮助。

关于python - 无法定位网页元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45425177/

相关文章:

java - Selenium Webdriver 在 DOM 中查找元素时出错

java - 无法在 selenium-java 中使用 xpath 错误定位元素

firefox - Selenium WebDriver 默认使用什么配置文件?

python - 箭头文件大小与 csv 相同吗?

python - 如何使用 Python 检查网络摄像头的状态

python - Spark运行时错误: uninitialized classmethod object

java - 使用 selenium webdriver 递增/循环 URL

python - Tkinter:从按钮处理程序访问 Canvas

python 如何停止无限 while 循环并继续执行其余代码?

java - 在 Selenium Webdriver 中使用向上和向下箭头从文本框中获取文本