【发布时间】:2025-11-30 00:00:01
【问题描述】:
所以我使用了 find_element_by_xpath 在同一个 html 中使用 selenium 来定位不同的对象。
但现在我试图在同一个 html 上查找特定元素,总是复制 xpath (chrome>inspect element>copy xpath),我得到 NoSuchElementException 错误。
对象在任何 iframe 之外。
这是我要访问的对象:
<a class="carb-de-grid-name-link" data-index="1">CapLeads DataExtension_Copy</a>
还有整个 html 的东西:
https://docs.google.com/document/d/1QfKlfYcH1y-aZ1oOZXzPwR1qeas7QjQDo0VeQOqdm-E/edit?usp=sharing
蟒蛇行:
link_data_extension_2=driver.find_element_by_xpath('//*[@id="dg-wrap"]/div[2]/div[2]/div[2]/div[1]/div[3]/div[2]/a')
我已经尝试过按住程序等待页面加载(20s),什么都没有。
感谢任何输入。
【问题讨论】:
-
xpath 有很多部分。一个额外的 div 似乎很容易潜入源中,或者一个被删除。您是否尝试过一些不太复杂的方法,例如仅查找具有指定文本或指定类的锚点?
-
您提到的 Html 元素 'CapLeads DataExtension_Copy' 在源中不可用文件共享。
-
@BryanOakley 我是 xpath 的新手,到目前为止,我一直在使用 chrome>inspect>copyxpath 并取得了成功。将查看带有指定文本的更近的锚点。
-
当我在那个谷歌文档中搜索“CapLeads”时,什么也没找到。
标签: python selenium xpath css-selectors