Heim >Backend-Entwicklung >Python-Tutorial >Python-Serverprogrammierung: HTML-Parsing mit BeautifulSoup

Python-Serverprogrammierung: HTML-Parsing mit BeautifulSoup

PHPz
PHPzOriginal
2023-06-18 10:32:511085Durchsuche

Python-Serverprogrammierung ist einer der Schlüsselaspekte der Webentwicklung, die viele Aufgaben umfasst, einschließlich HTML-Parsing. In Python verfügen wir über viele leistungsstarke Bibliotheken zur Verarbeitung von HTML-Dateien, die beliebteste davon ist BeautifulSoup.

In diesem Artikel erfahren Sie, wie Sie mit Python und BeautifulSoup Daten aus HTML-Dateien extrahieren. Wir werden mit den folgenden Schritten fortfahren:

  1. BeautifulSoup installieren
  2. HTML-Datei laden
  3. BeautifulSoup-Objekt erstellen
  4. HTML-Datei analysieren
  5. Daten extrahieren

Als Nächstes erklären wir diese Schritte einzeln.

  1. BeautifulSoup installieren

Wir können den Befehl pip verwenden, um BeautifulSoup zu installieren. Geben Sie einfach den folgenden Befehl in die Befehlszeile ein:

pip install beautifulsoup4
  1. Laden Sie die HTML-Datei

Bevor Sie BeautifulSoup verwenden, müssen wir die HTML-Datei laden in Python. Wir können die in Python integrierte Funktion open() verwenden, um die Datei zu öffnen und sie mit der Methode read() in den Speicher einzulesen:

with open("example.html") as fp:
    soup = BeautifulSoup(fp)

Im obigen Code haben wir das Schlüsselwort with verwendet, um die Datei example.html zu öffnen. Dies hat den Vorteil, dass die Datei automatisch geschlossen werden kann und das Problem vermieden wird, dass Dateiressourcen aufgrund einer abnormalen Beendigung des Programms nicht freigegeben werden.

  1. Erstellen Sie ein BeautifulSoup-Objekt.

Als nächstes müssen wir die HTML-Datei in ein BeautifulSoup-Objekt analysieren. Wir können den folgenden Code verwenden, um ein BeautifulSoup-Objekt zu erstellen:

soup = BeautifulSoup(html_doc, 'html.parser')

Im obigen Code haben wir den Parameter „html.parser“ verwendet, um BeautifulSoup anzuweisen, den integrierten HTML-Parser zum Parsen der HTML-Datei zu verwenden.

  1. HTML-Dateien analysieren

Sobald wir das BeautifulSoup-Objekt erstellt haben, können wir es analysieren. Wir können den folgenden Code verwenden, um die gesamte HTML-Datei auszudrucken:

print(soup.prettify())

In diesem Beispiel kann die Verwendung der prettify()-Methode die Ausgabe besser lesbar machen. Wenn Sie den obigen Code ausführen, erhalten Sie die Ausgabe der gesamten HTML-Datei.

  1. Daten extrahieren

Als nächstes schauen wir uns an, wie man Daten extrahiert. Wir können den folgenden Beispielcode verwenden, um alle Hyperlinks zu extrahieren:

for link in soup.find_all('a'):
    print(link.get('href'))

Im obigen Code verwenden wir die Methode find_all(), um alle „a“-Elemente zu finden, und verwenden die Methode get(), um das href-Attribut zu extrahieren.

Wir können auch Methoden verwenden, die CSS-Selektoren ähneln, um Elemente zu extrahieren. Beispielsweise können wir den folgenden Beispielcode verwenden, um alle p-Elemente zu extrahieren:

for paragraph in soup.select('p'):
    print(paragraph.text)

Im obigen Code haben wir die Methode select() verwendet und „p“ als Selektor verwendet.

In tatsächlichen Anwendungen müssen wir möglicherweise eine komplexere Analyse von HTML-Dateien gemäß unseren eigenen Anforderungen durchführen. Aber egal, welche Inhalte wir analysieren müssen, die Verwendung von BeautifulSoup kann den Prozess vereinfachen.

Zusammenfassung

In diesem Artikel wird erläutert, wie Sie mit Python und BeautifulSoup HTML analysieren und Daten extrahieren. Wir haben gelernt, wie man BeautifulSoup installiert, HTML-Dateien lädt, BeautifulSoup-Objekte erstellt, HTML-Dateien analysiert und Daten extrahiert. Obwohl es sich bei diesem Artikel nur um eine Einführung in BeautifulSoup handelt, sollten wir durch das Studium dieses Artikels ein besseres Verständnis für die Verwendung von BeautifulSoup für die HTML-Analyse und Datenextraktion erlangen.

Das obige ist der detaillierte Inhalt vonPython-Serverprogrammierung: HTML-Parsing mit BeautifulSoup. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn