Różne ścieżki instalacji:
$ sudo apt-get install python-bs4 $ sudo apt-get install python3-bs4 $ pip install beautifulsoup4BeautifulSoup zwraca obiekt reprezentujący dokument jako zagnieżdżone obiekty (kolejne pola) - każdy odpowiada prawdziwemu tag-owi. Najczęściej używane funkcji to find() i find_all(), pozwalające filtrować interesujące nas treści, ale istnieje też możliwość edytowanie struktury dokumentu.
soup = BeautifulSoup('<html>' \ '<a>' \ '<b>info1</b>' \ '<b>info2</b>' \ '</a>' \ '<c>text2</c>' \ '</html>') print(soup.a.b.string) tag = soup.find('a') print(tag)Wynik:
info1 <a><b>info1</b><b>info2</b></a>Istnieje też możliwość tworzenia bardziej wyrafinowanych filtrów.
def filter_c_tag(tag): return tag.name == 'c' and tag.has_attr('item') and tag.attrs['item'] == 'bar' soup = BeautifulSoup('<c item="bar">text1</c>' \ '<c item="foo">text2</c>' \ '<c item="bar">text3</c>') tags = soup.find_all(filter_c_tag) for t in tags: print(t.string)Wynik
text1 text3
Brak komentarzy:
Prześlij komentarz