的原因可能是没有找到符合条件的Span标签或者找到的Span标签中没有文本内容。
在使用BeautifulSoup库的findAll方法时,可以通过指定标签名和其他属性来筛选出符合条件的标签。如果没有找到符合条件的标签,findAll方法会返回一个空列表。
以下是一个示例代码,演示如何使用BeautifulSoup的findAll方法从Span标签中提取文本:
from bs4 import BeautifulSoup
html = """
<html>
<body>
<span class="example">Hello</span>
<span class="example">World</span>
</body>
</html>
"""
soup = BeautifulSoup(html, 'html.parser')
span_tags = soup.findAll('span', class_='example')
text_list = [tag.text for tag in span_tags]
print(text_list)
在上述代码中,我们首先定义了一个包含两个Span标签的HTML字符串。然后,使用BeautifulSoup库将其解析为一个BeautifulSoup对象。接下来,我们使用findAll方法筛选出所有class属性为"example"的Span标签,并将它们的文本内容提取出来存储在text_list列表中。最后,打印出text_list的内容。
如果运行上述代码,输出结果应该是:['Hello', 'World']。
如果使用findAll方法仍然返回一个空列表,那么可能是HTML中没有符合条件的Span标签,或者Span标签中没有文本内容。在这种情况下,可以检查HTML代码,确认是否存在符合条件的Span标签,并且这些标签中是否包含文本内容。
领取专属 10元无门槛券
手把手带您无忧上云