所以几年前我做了一个脚本,它使用selenium来导航一个商店,根据它们的名称定位商品,然后选择它们。我试着用我的旧代码重新编写它,但它的工作原理不一样。我尝试使用selenium来单击它发现的第一个项目,其中包含我对该项目使用inspect元素时它们所拥有的文本。但是我一直得到同样的错误,它找不到包含该文本的元素。在
from selenium import webdriver
driver=webdriver.Chrome('fakepath/fake')
driver.get("https://www.supremenewyork.com/shop/all")
driver.find_element_by_xpath("//a[@href='/shop/all/jackets']").click()
driver.find_element_by_partial_link_text('GORE-TEX')
这是一个包含文本的元素,我正试图使用selenium查找并单击它
^{pr2}$selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"partial link text","selector":"GORE-TEX"}
(Session info: chrome=76.0.3809.132)
您需要等到元素可单击为止。这将单击页面上的第一个匹配链接。在
当执行
driver.find_element_by_xpath("//a[@href='/shop/all/jackets']").click()
行时,您试图单击的元素尚未准备好被单击。换句话说,您需要等到元素被加载。在幸运的是,Selenium允许您等待某些条件,例如“可点击”。请参阅here以获取参考。在
相关问题 更多 >
编程相关推荐