Beautiful Soup 简明教程
Beautiful Soup - string Property
Method Description
在 Beautiful Soup 中,soup 和 Tag 对象具有一个便利属性 - string 属性。它返回 PageElement、Soup 或 Tag 中的单个字符串。如果此元素只有一个字符串子项,那么将返回与之对应的 NavigableString。如果这个元素有一个子标签,返回值是子标签的“string”属性,如果元素本身是一个字符串(没有子项),那么 string 属性将返回 None。
Example 1
以下代码有一个 HTML 字符串,其中包含一个 <div> 标签,该标签包含三个 <p> 元素。我们找到第一个 <p> 标签的 string 属性。
from bs4 import BeautifulSoup, NavigableString
markup = '''
<div id="Languages">
<p>Java</p> <p>Python</p> <p>C++</p>
</div>
'''
soup = BeautifulSoup(markup, 'html.parser')
tag = soup.p
navstr = tag.string
print (navstr, type(navstr))
nav_str = str(navstr)
print (nav_str, type(nav_str))
Output
Java <class 'bs4.element.NavigableString'>
Java <class 'str'>
string 属性返回一个 NavigableString。它可以使用 str() 函数强制转换为一个常规的 Python 字符串