Beautiful Soup - strings 属性



方法描述

对于任何拥有多个子元素的PageElement,可以使用strings属性获取每个子元素的内部文本。与string属性不同,strings属性处理元素包含多个子元素的情况。strings属性返回一个生成器对象。它会产生一系列对应于每个子元素的NavigableStrings。

语法

Tag.strings

示例1

您可以检索soup以及标签对象的strings属性的值。在下面的示例中,检查了soup对象的strings属性。

from bs4 import BeautifulSoup, NavigableString

markup = '''
   <div id="Languages">
      <p>Java</p> <p>Python</p> <p>C++</p>
   </div>
'''
soup = BeautifulSoup(markup, 'html.parser')
print ([string for string in soup.strings])

输出

['\n', '\n', 'Java', ' ', 'Python', ' ', 'C++', '\n', '\n']

请注意列表中的换行符和空格。我们可以使用stripped_strings属性删除它们。

示例2

我们现在获得`

`标签的strings属性返回的生成器对象。使用循环,我们打印字符串。

tag = soup.div

navstrs = tag.strings
for navstr in navstrs:
   print (navstr)

输出

Java
 
Python
 
C++

请注意,输出中出现了换行符和空格,可以使用stripped_strings属性将其删除。

广告
© . All rights reserved.