【发布时间】:2021-07-08 01:59:27
【问题描述】:
<div class="parent">
<h1> Jeff Bezos </h1>
CEO and Founder, Amazon
<h2> Elon musk <h2>
<p> CEO of SpaceX <p>
<p> CEO of <a>Tesla<a> <p>
</div>
所以本质上我需要遍历父级的所有子级,而我之前使用过这段代码
parent.find_all(recursive=False):
但现在我遇到了一个问题,我的页面包含未标记的文本,因此在此示例中为“CEO 和创始人,亚马逊”。子标签可以有很深的嵌套,但我需要遍历所有下一级的项目,包括未标记的文本。这里没有我可以使用的结构或模式,未标记的文本位于 html 中的随机位置
我的预期输出:
["<h1> Jeff Bezos </h1>",
"CEO and Founder, Amazon",
"<h2> Elon musk <h2>",
"<p> CEO of SpaceX <p>",
"<p> CEO of <a>Tesla<a> <p>"]
带有标签的行仍然是 bs4 对象,但字符串被提取为 navigablestring 或只是文本
有什么办法吗?
【问题讨论】:
标签: python html web-scraping beautifulsoup