繁体   English   中英

selenium 和 XPATH 无法找到按钮

[英]selenium and XPATH unable to locate a button

我试图在我的 Yandex 帐户中使用 selenium 保存相同的内容,问题是当我尝试传递代码以单击“保存到 Yandex 磁盘”按钮时,selenium 将消息传递给我无法找到该元素。

那是我的代码:

browser.find_element_by_xpath('/html/body/div[1]/div/div[2]/div[1]/div[1]/div/div[1]/div[3]/button[1]').click()

这是带有“保存到 yandex 磁盘”按钮的页面: https://yadi.sk/d/0ReZErv_cLl1-w

我读到你也可以通过名称或 CSS 选择器传递元素,但是当我尝试使用 firefox 检查器复制元素时,浏览器给了我奇怪的代码。

有什么建议么? ..当然,无论是否登录 Yandex,都会出现同样的错误。 谢谢

使用这个 xpath //*[contains(text(),'Save to Yandex.Disk')]点击“Save to Yandex.Disk”按钮

您可以使用此 XPath 来检测所需的元素:

//div[@class = 'folder-content content content_other content_dir']//button[contains(@class, "save")]

First thing is that we need to improve the xpath you are using to find the element we should use the xpath that is relative but in your case you are using the xpath that is absolute, I use the extension chropath in chrome to find the xpath of元素

下面提到的是我推荐你使用的 chro 路径,虽然上面提到的两个 xpath 也可以使用

让我知道如果您还有任何疑问,我可以为您形成一个好的 xpath

//div[@class='folder-content__header']//span[contains(text(),'Save to Yandex.Disk')]

下面提到的是我在自己的项目中使用的 xpath 之一,看看也许这可以提高你的视野

//label[contains(text(),'Plant Code*')]//parent::div[@class='rb_Work_FieldContainer']//following-sibling::div[contains(@class,'rb_Work_FieldValueArea rb_Work_FieldValueArea_create ')]//textarea[@class='textarea']

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM