微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何使用selenium获取特定元素的html源代码?

我正在查看的页面包含:
<div id='1'> <p> text 1 <h1> text 2 </h1> text 3 <p> text 4 </p> </p> </div>

我想获取div中的所有文本,除了< h>中的文本.
(我想得到“文字1”,“文字3”和“文字4”)
可能有一些< h>元素,或根本没有.
并且可能存在一些< p>元素,甚至一个在另一个内部,或者没有.

我想通过获取div的所有html源代码并使用正则表达式删除< h>来实现此目的.元素.但selenium.get_text不会返回html,只返回文本(全部!).

我知道我可以使用selenium.get_html_source,然后用正则表达式查找我需要的元素,但这看起来很浪费,因为selenium知道如何找到元素.

有没有人有更好的解决方案?
谢谢 :)

解决方法

以下代码将为您提供div元素中的HTML:
sel = selenium('localhost',4444,browser,my_url)
html = sel.get_eval("this.browserbot.getCurrentwindow().document.getElementById('1').innerHTML")

然后你可以使用BeautifulSoup来解析它并提取你真正想要的东西.

我希望它有所帮助

原文地址:https://www.jb51.cc/html/226350.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐