Beautiful Soup - 物件比較



根據Beautiful Soup的定義,如果兩個NavigableString或Tag物件代表相同的HTML/XML標記,則它們相等。

現在讓我們看下面的例子,其中兩個<b>標籤被視為相等,即使它們位於物件樹的不同部分,因為它們看起來都像“<b>Java</b>”。

示例

from bs4 import BeautifulSoup
markup = "<p>Learn <i>Python</i>, <b>Java</b>, advanced <i>Python</i> and advanced <b>Java</b>! from Tutorialspoint</p>"
soup = BeautifulSoup(markup, "html.parser")
b1 = soup.find('b')
b2 = b1.find_next('b')
print(b1== b2)

print(b1 is b2)

輸出

True
False

在下面的例子中,比較了兩個NavigableString物件。

示例

from bs4 import BeautifulSoup
markup = "<p>Learn <i>Python</i>, <b>Java</b>, advanced <i>Python</i> and advanced <b>Java</b>! from Tutorialspoint</p>"
soup = BeautifulSoup(markup, "html.parser")
i1 = soup.find('i')
i2 = i1.find_next('i')
print(i1.string== i2.string)

print(i1.string is i2.string)

輸出

True
False
廣告
© . All rights reserved.