gpt4 book ai didi

python - BeautifulSoup - 将带有标签的文本提取为文本

转载 作者:太空宇宙 更新时间:2023-11-04 06:41:40 25 4
gpt4 key购买 nike

假设我有 html

<div>Hey</div><div>This is <b>some text<b/>, right here. <a>Link<a/></div>

代码

soup = BeautifulSoup(html)
texts = soup.findAll(text=True)

print() 会返回

['Hey', 'This is ', 'some text', ', right here.', 'Link']

用于文本。

我怎样才能排除像“b”这样的标签(只包含文本),所以我可以获得所需的输出

['Hey', 'This is <b>some text<b/>, right here.', 'Link']

最好不是字符串,而是等效的 NavigableStrings 或类似字符串。

换句话说,我怎样才能从导航树中排除一些标签?

最佳答案

基于更新的 OP 问题:

eDiv = soup.findAll("div")
if eDiv.find("b") is None:
tag = eDiv.text
else:
tag = eDiv

现在您可以将其附加到列表中。

关于python - BeautifulSoup - 将带有标签的文本提取为文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39913686/

25 4 0