gpt4 book ai didi

python - 使用 BeautifulSoup/Python 从 html 文件中提取文本

转载 作者:行者123 更新时间:2023-12-01 00:49:23 26 4
gpt4 key购买 nike

我正在尝试从 html 文件中提取文本。html 文件如下所示:

<li class="toclevel-1 tocsection-1">
<a href="#Baden-Württemberg"><span class="tocnumber">1</span>
<span class="toctext">Baden-Württemberg</span>
</a>
</li>
<li class="toclevel-1 tocsection-2">
<a href="#Bayern">
<span class="tocnumber">2</span>
<span class="toctext">Bayern</span>
</a>
</li>
<li class="toclevel-1 tocsection-3">
<a href="#Berlin">
<span class="tocnumber">3</span>
<span class="toctext">Berlin</span>
</a>
</li>

我想从最后一个 span 标记中提取最后一个文本。在第一行中,在 class="toctext" 之后是“Baden-Würtemberg”,然后将其放入 python 列表中。

在Python中我尝试了以下方法:

names = soup.find_all("span",{"class":"toctext"})

我的输出是这个列表:

[<span class="toctext">Baden-Württemberg</span>, <span class="toctext">Bayern</span>, <span class="toctext">Berlin</span>]

那么如何才能只提取标签之间的文本呢?

感谢大家

最佳答案

find_all 方法返回一个列表。迭代列表以获取文本。

for name in names:
print(name.text)

返回:

Baden-Württemberg
Bayern
Berlin

内置的 python dir()type() 方法总是可以方便地检查对象。

print(dir(names))

[...,
'__sizeof__',
'__str__',
'__subclasshook__',
'__weakref__',
'append',
'clear',
'copy',
'count',
'extend',
'index',
'insert',
'pop',
'remove',
'reverse',
'sort',
'source']

关于python - 使用 BeautifulSoup/Python 从 html 文件中提取文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56691423/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com