通常情况下,Beautiful Soup 会返回一个 Tag 或 NavigableString 对象,但是在处理不规范的 HTML 或 XML 时,有时会返回 NoneType。解决此问题的方法是,增加容错处理,如判断返回的对象是否为 NoneType 后再进行操作。
示例代码:
from bs4 import BeautifulSoup
html = "hello world
"
soup = BeautifulSoup(html, 'html.parser')
div = soup.find('div')
p = div.find('p')
if p is not None:
print(p.text)
else:
print("没有找到 p 标签")