即使元素存在,硒也无法定位该元素



我正试图点击"查看故事"按钮,其中(您需要登录(:https://www.instagram.com/stories/inoxtag/

按钮HTML(带法语文本(:

<button class="_acan _acap _acau _acav" type="button">Voir story</button>

我使用的是Selenium和Python。

我的代码是:

driver.find_element_by_xpath("/html/body/div[1]/div/div/div/div[1]/div/div/div/div[1]/div[1]/section/div[1]/div/section/div/div[1]/div/div/div/div[3]/button").click()

这让我想到了这个错误:

selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"xpath","selector":"/html/body/div[1]/div/div/div/div[1]/div/div/div/div[1]/div[1]/section/div[1]/div/section/div/div[1]/div/div/div/div[3]/button"}

我使用xpath是因为按钮类似乎被混淆了,所以我更喜欢使用xpath。我知道我的xpath是正确的,因为如果我在网页上执行F12,然后粘贴我的xpath-我已经选择了按钮。谢谢

所以我调试了你的问题。当你打开(driver.get(…((链接时,你是否考虑了所有的";允许必要的和可选的cookie";,然后登录到你的帐户?

如果你在隐姓埋名模式下调试了这个,并保持窗口打开,隐姓埋称会存储你的数据,因此不会再次询问你的详细信息。

但是,如果您调试脚本并在线上设置一个断点

driver.find_element_by_xpath("/html/body/div[1]/div/div/div/div[1]/div/div/div/div[1]/div[1]/section/div[1]/div/section/div/div[1]/div/div/div/div[3]/button").click()

然后你继续填充你的数据,直到它将你路由到你显示的页面,然后你尝试执行点击按钮的代码,你不会有问题。

最新更新