Heim > Artikel > Backend-Entwicklung > Python-Serverprogrammierung: HTML-Parsing mit BeautifulSoup
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:
Als Nächstes erklären wir diese Schritte einzeln.
Wir können den Befehl pip verwenden, um BeautifulSoup zu installieren. Geben Sie einfach den folgenden Befehl in die Befehlszeile ein:
pip install beautifulsoup4
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.
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.
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.
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!