程序问答   发布时间:2022-06-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了类型错误:在 selenium 中使用 xpath 时,node.ownerDocument 为 null大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决类型错误:在 SELEnium 中使用 xpath 时,node.ownerDocument 为 null?

开发过程中遇到类型错误:在 SELEnium 中使用 xpath 时,node.ownerDocument 为 null的问题如何解决?下面主要结合日常开发的经验,给出你关于类型错误:在 SELEnium 中使用 xpath 时,node.ownerDocument 为 null的解决方法建议,希望对你解决类型错误:在 SELEnium 中使用 xpath 时,node.ownerDocument 为 null有所启发或帮助;

我有以下 HTML 我想使用 SELEnium 在 firefox 中抓取。我想获取属性“title”(=我要提取的信息)及其文本(=我要提取的更多信息)的值。该元素位于 iframe 内。

<tr ID="ID1f7" class="new" data-oao-mailID="tmai16837d54b5315319" data-folderID="tfol11c18fac000026ec">
<td class="slct first">
<span class="form-input form-input-type-checkBox">
<input type="checkBox" ID="ID1f8" name="mailList:rowscheckGroup" value="check0"/>
</span>
</td>
<td class="mark">
<a class="mail-read-mark marked" data-oao-hover="toggleRead" title="Als gelesen markIEren" data-title-read="Als gelesen markIEren" data-title-unread="Als ungelesen markIEren">
<svg class="mail-read-icon" xmlns="http://www.w3.org/2000/svg">
<use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#status-unread_24"></use>
</svg>
</a>
</td>
<td class="name" title="information I need to extract;">
more information I need to extract

</td>
<td class="text">
</td>
<td class="date">10:48 Uhr</td>
<td class="size" ID="ID1f9">63,17 KB</td>
</tr>

这是我正在使用的代码:

iframe = driver.find_elements_by_xpath("//div[@class='app-contents-wrapper']//iframe")[4]
    driver.switch_to.frame(iframE)
    time.sleep(3)
    emails = driver.find_elements_by_xpath("//tr[contains('@data-oao-mailID',tmail) and ./td[@class='name']]")
        
    for w in emails:
        print(w.find_elemenT_By_xpath(".//@title"))

但是,当我执行循环时,我不断收到错误“TypeError: node.ownerdocument is null”。这很奇怪,因为当我打印出电子邮件元素时,

for w in emails:
        print(w)

我得到的结果如下:

<SELEnium.webdriver.firefox.webelement.firefoxWebElement (session="ad91d2a0-ed8f-8f44-9646-dad80647b266",element="243d171e-ad4c-d94b-bf8f-698daa971e0c")>
<SELEnium.webdriver.firefox.webelement.firefoxWebElement (session="ad91d2a0-ed8f-8f44-9646-dad80647b266",element="040e26db-ecb1-a24c-af95-09f91d182e3c")>
<SELEnium.webdriver.firefox.webelement.firefoxWebElement (session="ad91d2a0-ed8f-8f44-9646-dad80647b266",element="938c8595-e753-9141-926a-71d3fd81963d")>

所以我用来选择“电子邮件”元素的代码似乎有效。但是,当我尝试遍历这些元素并获得“title”属性时,我的 xpath-SELEctor 似乎无法选择它们。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

@H_489_36@

大佬总结

以上是大佬教程为你收集整理的类型错误:在 selenium 中使用 xpath 时,node.ownerDocument 为 null全部内容,希望文章能够帮你解决类型错误:在 selenium 中使用 xpath 时,node.ownerDocument 为 null所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。