Python Bibliothek Beautiful Soup (bs4) zum Auslesen von XML- und HTML Dokumenten/ Webseiten

Wenn du Daten oder allgemeine Informationen aus einer fremden Website parsen, scrappen, auslesen möchtest, steht dir in Python die Programmbibliothek Beautiful Soup zur Verfügung.

Beautiful Soup ist eine Programmbibliothek für Python, mit welcher sich XML- und HTML-Dokumente parsen lassen.

Statt dem Namen „Beautiful Soup“ findest du oft „bs4“ – das ist der Name der Bibliothek.

Achtung: Beautiful Soup 3 (bs3) funktioniert nur mit Python 2.x. Die aktuelle Version Beautiful Soup 4 (bs4) läuft mit Python 2.7 und 3.

Aufgerufen wird mit folgender Zeile:

import requests # ruft HTTP-Seiten auf
from bs4 import BeautifulSoup # parst HTML-Dokumente 
# Die Bibliothek BeautifulSoup wird geladen aus dem Paket bs4

Das Modul requests ermöglicht das Aufrufen und Einlesen von HTML Webseiten. BeautifulSoup ist das Modul, was XML- und HTML-Dokumente parst, auswertet.

Ortungselemente

Du möchtest „John Hiller“ herausschneiden? Nutze dafür .next_sibling. Dieser Befehle liefert das nach <label> folgende Element, in diesem Fall den Text „John Smith“. Die Anweisung .strip schneidet eventuelle Leerzeichen vor und nach dem Namen weg.

from bs4 import BeautifulSoup

data = """
<div>
    <label>Name:</label>
    John Hiller
</div>
"""

soup = BeautifulSoup(data, "html.parser")

label = soup.find("label", text="Name:")
print(label.next_sibling.strip())

# Druckt: John Hiller

Links

crummy.com – Dokumentation der Bibliothek Beautiful Soup 4 für Python 2 und 3. Beautiful Soup 3 hingegen funktioniert nur mit Python 2.x.