Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Arbeiten mit Spezifischen Elementen | Decoding HTML With Beautiful Soup
Web Scraping Mit Python

bookArbeiten mit Spezifischen Elementen

Das Navigieren in einem HTML-Dokument mithilfe von Python-Attributen ruft nur das erste Vorkommen eines Elements ab. Um das erste Vorkommen eines Elements zu finden, ohne den vollständigen Pfad zu kennen, die Methode .find() verwenden und den Tag-Namen als Zeichenkette (ohne < >-Klammern) übergeben. Zum Beispiel das erste <div>-Element im HTML-Dokument lokalisieren.

123456789101112
# Importing libraries from bs4 import BeautifulSoup from urllib.request import urlopen # Reading web page url = "https://codefinity-content-media.s3.eu-west-1.amazonaws.com/18a4e428-1a0f-44c2-a8ad-244cd9c7985e/jesus.html" page = urlopen(url) html = page.read().decode("utf-8") # Reading HTML with BeautifulSoup soup = BeautifulSoup(html, "html.parser") print(soup.find("div"))
copy

Mit der Methode .find_all() können auch alle Instanzen eines bestimmten Elements abgerufen werden. Sie gibt eine Liste aller Übereinstimmungen zurück. Zum Beispiel alle <p>-Tags im HTML-Dokument finden.

123456789101112
# Importing libraries from bs4 import BeautifulSoup from urllib.request import urlopen # Reading web page url = "https://codefinity-content-media.s3.eu-west-1.amazonaws.com/18a4e428-1a0f-44c2-a8ad-244cd9c7985e/jesus.html" page = urlopen(url) html = page.read().decode("utf-8") # Reading HTML with BeautifulSoup soup = BeautifulSoup(html, "html.parser") print(soup.find_all("p"))
copy

Mit der Methode .find_all() können mehrere Tags gefunden werden, indem eine Liste von Tag-Namen übergeben wird. Beispielsweise können alle <div>- und <title>-Elemente gesammelt werden.

12345678910111213
# Importing libraries from bs4 import BeautifulSoup from urllib.request import urlopen # Reading web page url = "https://codefinity-content-media.s3.eu-west-1.amazonaws.com/18a4e428-1a0f-44c2-a8ad-244cd9c7985e/page.html" page = urlopen(url) html = page.read().decode("utf-8") # Reading HTML with BeautifulSoup soup = BeautifulSoup(html, "html.parser") for el in soup.find_all(["div", "title"]): print(el)
copy
War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 2. Kapitel 5

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

Suggested prompts:

Can you explain the difference between `.find()` and `.find_all()` in BeautifulSoup?

How can I extract the text content from the elements found?

What other attributes can I use with `.find()` or `.find_all()` to filter elements?

bookArbeiten mit Spezifischen Elementen

Swipe um das Menü anzuzeigen

Das Navigieren in einem HTML-Dokument mithilfe von Python-Attributen ruft nur das erste Vorkommen eines Elements ab. Um das erste Vorkommen eines Elements zu finden, ohne den vollständigen Pfad zu kennen, die Methode .find() verwenden und den Tag-Namen als Zeichenkette (ohne < >-Klammern) übergeben. Zum Beispiel das erste <div>-Element im HTML-Dokument lokalisieren.

123456789101112
# Importing libraries from bs4 import BeautifulSoup from urllib.request import urlopen # Reading web page url = "https://codefinity-content-media.s3.eu-west-1.amazonaws.com/18a4e428-1a0f-44c2-a8ad-244cd9c7985e/jesus.html" page = urlopen(url) html = page.read().decode("utf-8") # Reading HTML with BeautifulSoup soup = BeautifulSoup(html, "html.parser") print(soup.find("div"))
copy

Mit der Methode .find_all() können auch alle Instanzen eines bestimmten Elements abgerufen werden. Sie gibt eine Liste aller Übereinstimmungen zurück. Zum Beispiel alle <p>-Tags im HTML-Dokument finden.

123456789101112
# Importing libraries from bs4 import BeautifulSoup from urllib.request import urlopen # Reading web page url = "https://codefinity-content-media.s3.eu-west-1.amazonaws.com/18a4e428-1a0f-44c2-a8ad-244cd9c7985e/jesus.html" page = urlopen(url) html = page.read().decode("utf-8") # Reading HTML with BeautifulSoup soup = BeautifulSoup(html, "html.parser") print(soup.find_all("p"))
copy

Mit der Methode .find_all() können mehrere Tags gefunden werden, indem eine Liste von Tag-Namen übergeben wird. Beispielsweise können alle <div>- und <title>-Elemente gesammelt werden.

12345678910111213
# Importing libraries from bs4 import BeautifulSoup from urllib.request import urlopen # Reading web page url = "https://codefinity-content-media.s3.eu-west-1.amazonaws.com/18a4e428-1a0f-44c2-a8ad-244cd9c7985e/page.html" page = urlopen(url) html = page.read().decode("utf-8") # Reading HTML with BeautifulSoup soup = BeautifulSoup(html, "html.parser") for el in soup.find_all(["div", "title"]): print(el)
copy
War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 2. Kapitel 5
some-alt