gpt4 book ai didi

python - 尽管正确(?)xpath,Selenium Webdriver Python 仍找不到元素

转载 作者:行者123 更新时间:2023-12-01 05:36:05 25 4
gpt4 key购买 nike

我正在尝试使用 Selenium 自动化一些东西,但在定位特定元素时遇到一些问题。我已经使用相同的方法在不同页面上定位了数百个其他元素,但由于某种原因,这个元素只是不想被定位。我想这可能是由于页面上的 HTML 而不是 python 脚本造成的?虽然我无法更改 HTML,所以如果是这种情况,我将需要以某种方式找出解决方法。

我在与 python 位于同一目录中的一个名为“index.html”的文件中获得了测试 HTML

这是它的代码:

<body>
<tbody>
<tr><td class="rd-xc-Kd-kl-lf"><table style="position: relative; left: 0px;" id=":a" class="rd-xc-Kd-kl" cellpadding="0" cellspacing="0"><tbody><tr><td><div class="rd-xc-Kd-Bj-Gm">Drag a photo here</div><div class="rd-xc-Kd-Bj-Fm">Or, if you prefer...</div><div id=":d"><div style="-moz-user-select: none;" role="button" class="a-b-c d-u d-u-F">Select a photo from your computer</div></div> </td></tr></tbody></table><div id=":c" style="display:none" class="d-Zb rd-jl-Ub-Yd"><div class="rd-jl-Li">Uploading...</div><div aria-valuenow="0" aria-live="polite" role="progressbar" class="a-b-c Ub-Vb-Wb rd-d-Yb-Zb"><div style="width: 0%;" class="Ub-Vb-O"></div></div></div></td></tr>
</tbody>

</body>

(这只是从 YouTube/Google+ 拖放图像上传表单中获取的一些代码。我正在尝试每周自动更新我的封面照片)

这是我的测试 python 代码:

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver import ActionChains
import os


driver = webdriver.Firefox()
driver.implicitly_wait(20)

driver.get(os.getcwd()+"\index.html")

element = driver.find_element_by_xpath("//td[@class='rd-xc-Kd-kl-lf']")
print element
print element.text

我得到的错误是这样的 NoSuchElementException:

NoSuchElementException: Message: u'Unable to locate element:{"method":"xpath","selector":"//td[@class=\'rd-xc-Kd-...\']"}' ; Stacktrace: at FirefoxDriver.prototype.findElementInternal...

我不太确定从哪里开始解决这个问题。我尝试使用其他选择器,例如 id“id=':a'”的 find_element_by_id,但这也不起作用。

感谢任何帮助。

最佳答案

您尝试过在 Firefox 中使用 xpath 检查器吗?这在过去确实对我有帮助。 https://addons.mozilla.org/en-US/firefox/addon/xpath-checker/?id=1095

此外,您可以尝试:

driver.find_element_by_class_name('rd-xc-Kd-Bj-Gm')

关于python - 尽管正确(?)xpath,Selenium Webdriver Python 仍找不到元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19023545/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com