当使用BeautifulSoup解析HTML或XML时,可能会遇到.string属性为空的情况。这是由于标签内只有子节点而没有实际文本内容的情况,例如:
Hello
在这种情况下,.string属性将返回None。如果要获取标签内的文本内容,可以使用.text属性,例如:
from bs4 import BeautifulSoup
html = '
Hello
' soup = BeautifulSoup(html, 'html.parser') print(soup.p.text)输出结果为:Hello
可以看到,使用.text属性可以获取实际的文本内容,而不受子节点的影响。