Beautiful Soup - children 屬性



方法描述

Beautiful Soup 庫中的 Tag 物件具有 children 屬性。它返回一個生成器,用於迭代直接子元素和文字節點(即 NavigableString)。

語法

Tag.children

返回值

此屬性返回一個生成器,您可以使用它來迭代 PageElement 的直接子元素。

示例 1

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.div
children = tag.children
for child in children:
   print (child)

輸出

<p>Java</p>

<p>Python</p>

<p>C++</p>

示例 2

soup 物件也具有 children 屬性。

from bs4 import BeautifulSoup, NavigableString

markup = '''
   <div id="Languages">
      <p>Java</p> <p>Python</p> <p>C++</p>
   </div>
'''
soup = BeautifulSoup(markup, 'html.parser')

children = soup.children
for child in children:
   print (child)

輸出

<div id="Languages">
<p>Java</p> <p>Python</p> <p>C++</p>
</div>

示例 3

在下面的示例中,我們將 NavigableString 物件附加到 <p> 標籤,並獲取子元素列表。

from bs4 import BeautifulSoup, NavigableString

markup = '''
   <div id="Languages">
      <p>Java</p> <p>Python</p> <p>C++</p>
   </div>
'''
soup = BeautifulSoup(markup, 'html.parser')
soup.p.extend(['and', 'JavaScript'])
children = soup.p.children
for child in children:
    print (child)

輸出

Java
and
JavaScript
廣告