當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python BeautifulSoup previous_element屬性用法及代碼示例


在 Beautiful Soup 中,previous_element 屬性返回解析樹中先前的 stringtag。我們將通過示例來了解此屬性的微妙之處。

例子

考慮以下 HTML 文檔:

my_html = """
         <p>Alex</p>
   <p id="bob">Bob</p>
"""
soup = BeautifulSoup(my_html)

讓我們獲取 <p>Bob</p>previous_element

p_bob = soup.find(id="bob")
p_bob.previous_element



'\n'

對於那些期望看到 <p>Alex</p> 的人來說,結果可能會令人驚訝。出現這樣的結果是因為 <p>Alex</p><p>Bob</p> 之間存在換行符 \n 。那麽,要聯係 Alex,您需要再次調用 previous_element

p_bob = soup.find(id="bob")
p_bob.previous_element.previous_element



'Alex'

在這裏,我們獲得了 <p>Alex</p> 的字符串(即內部文本)。要獲取標簽本身,我們需要再次調用previous_element

p_bob = soup.find(id="bob")
p_bob.previous_element.previous_element.previous_element



<p>Alex</p>

如果您隻想訪問前一個元素,那麽更好的選擇是調用 find_previous_sibling() 方法:

p_bob = soup.find(id="bob")
p_bob.find_previous_sibling()



<p>Alex</p>

相關用法


注:本文由純淨天空篩選整理自Isshin Inada大神的英文原創作品 BeautifulSoup | previous_element property。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。