Beautiful Soup - find_parent() 方法



方法描述

BeautifulSoup 包中的 find_parent() 方法查詢此 PageElement 的最接近的父元素,該元素匹配給定的條件。

語法

find_parent( name, attrs, **kwargs)

引數

  • name − 標籤名稱過濾器。

  • attrs − 屬性值過濾器字典。

  • kwargs − 屬性值過濾器字典。

返回型別

find_parent() 方法返回 Tag 物件或 NavigableString 物件。

示例 1

我們將在本例中使用以下 HTML 程式碼:

<html>
   <body>
      <h2>Departmentwise Employees</h2>
      <ul id="dept">
      <li>Accounts</li>
      <ul id='acc'>
      <li>Anand</li>
      <li>Mahesh</li>
      </ul>
      <li>HR</li>
      <ol id="HR">
      <li>Rani</li>
      <li>Ankita</li>
      </ol>
      </ul>
   </body>
</html>

在下面的示例中,我們查詢作為字串“HR”父級的標籤的名稱。

from bs4 import BeautifulSoup 

soup = BeautifulSoup(html, 'html.parser')
obj=soup.find(string='HR')
print (obj.find_parent().name)

輸出

li

示例 2

<body> 標籤始終包含在頂級 <html> 標籤中。在下面的示例中,我們使用 find_parent() 方法來確認此事實:

from bs4 import BeautifulSoup

soup = BeautifulSoup(html, 'html.parser')
obj=soup.find('body')
print (obj.find_parent().name)

輸出

html
廣告