我正在报废一个网站,我在获取跨度的文本时遇到问题。我已经看到您可以使用以下内容来获取文本:
<span title="9 gold badges"><span class="badge1"></span><span class="badgecount">9</span></span>
badges = soup.body.find('div', attrs={'class': 'badges'})
for span in badges.span.find_all('span', recursive=False):
print span.attrs['title']
但是,我有兴趣获取文本的跨度没有属性。如何获取文本?
<span>Geolocation: 35.1391, -90.0536</span>
tag.text 或 tag.get_text((
for span in badges.span.find_all('span', recursive=False):
print span.text
示例输出:
>>> span = soup.find('span')
>>> span
<span>Geolocation: 35.1391, -90.0536</span>
>>> span.text
'Geolocation: 35.1391, -90.0536'
>>> span.get_text()
'Geolocation: 35.1391, -90.0536'
要获取没有属性的所有 span 标签,请尝试以下代码段:
for span in badges.span.find_all('span', recursive=False):
if not span.attrs.values():
print (span.text)
希望这对你有用。