【发布时间】:2020-03-25 13:15:00
【问题描述】:
我正在尝试使用 Selenium 单击此网站上的“登录”按钮:https://results.decisiondeskhq.com/2020/primary/colorado/president。我右击inspect element中的元素,复制xpath,放入find_element_by_xpath函数中。
这是我的代码:
from selenium import webdriver
driver = webdriver.Chrome(executable_path="/users/aliallam/Desktop/scraper test/chromedriver")
url = 'https://results.decisiondeskhq.com/2020/primary/colorado/president'
driver.get(url)
driver.find_element_by_xpath('//*[@id="content"]/div/div/div/div/button').click()
这是我收到的错误消息:
Traceback (most recent call last):
File "/Users/aliallam/Desktop/scraper test/sandbox2.py", line 7, in <module>
driver.find_element_by_xpath('//*[@id="content"]/div/div/div/div/button').click()
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/selenium/webdriver/remote/webdriver.py", line 394, in find_element_by_xpath
return self.find_element(by=By.XPATH, value=xpath)
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/selenium/webdriver/remote/webdriver.py", line 976, in find_element
return self.execute(Command.FIND_ELEMENT, {
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/selenium/webdriver/remote/webdriver.py", line 321, in execute
self.error_handler.check_response(response)
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/selenium/webdriver/remote/errorhandler.py", line 242, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"xpath","selector":"//*[@id="content"]/div/div/div/div/button"}
(Session info: chrome=80.0.3987.149)
提前谢谢你!
【问题讨论】:
-
这个网站似乎有一个加载屏幕。尝试使用等待命令以确保页面已加载,然后再尝试单击。查看此网站以深入了解如何在 selenium 中使用等待命令 browserstack.com/guide/wait-commands-in-selenium-webdriver