Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer Attributen en Inhoud van een Element | Werken met Elementattributen in Beautiful Soup
Web Scraping met Python

bookAttributen en Inhoud van een Element

De in de vorige secties besproken methoden geven specifieke delen van de HTML-code terug. BeautifulSoup stelt ons in staat om de attributen en inhoud van bepaalde elementen op te halen. Om toegang te krijgen tot de attributen van een object, gebruik je het .attrs-attribuut. Bijvoorbeeld, we kunnen de attributen van het eerste <div>-element ophalen.

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").attrs)
copy

Het is belangrijk om op te merken dat het resultaat van het gebruik van het .attrs-attribuut een dictionary is waarbij de sleutels de namen van de attributen zijn en de waarden hun respectievelijke waarden. Als je de inhoud wilt verkrijgen die binnen een tag is opgeslagen, gebruik dan het .contents-attribuut. Laten we bijvoorbeeld de inhoud van het eerste <div>-element bekijken.

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").contents)
copy

Zoals hierboven te zien is, zijn alle regeleindetekens opgenomen in een lijst van elementen, wat mogelijk niet de meest wenselijke weergave van de inhoud is. Om alleen de tekst binnen een specifiek element te extraheren, gebruik de .get_text()-methode. Vergelijk de resultaten van het onderstaande voorbeeld met die van eerder.

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").get_text())
copy
Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 3. Hoofdstuk 1

Vraag AI

expand

Vraag AI

ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

Awesome!

Completion rate improved to 4.35

bookAttributen en Inhoud van een Element

Veeg om het menu te tonen

De in de vorige secties besproken methoden geven specifieke delen van de HTML-code terug. BeautifulSoup stelt ons in staat om de attributen en inhoud van bepaalde elementen op te halen. Om toegang te krijgen tot de attributen van een object, gebruik je het .attrs-attribuut. Bijvoorbeeld, we kunnen de attributen van het eerste <div>-element ophalen.

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").attrs)
copy

Het is belangrijk om op te merken dat het resultaat van het gebruik van het .attrs-attribuut een dictionary is waarbij de sleutels de namen van de attributen zijn en de waarden hun respectievelijke waarden. Als je de inhoud wilt verkrijgen die binnen een tag is opgeslagen, gebruik dan het .contents-attribuut. Laten we bijvoorbeeld de inhoud van het eerste <div>-element bekijken.

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").contents)
copy

Zoals hierboven te zien is, zijn alle regeleindetekens opgenomen in een lijst van elementen, wat mogelijk niet de meest wenselijke weergave van de inhoud is. Om alleen de tekst binnen een specifiek element te extraheren, gebruik de .get_text()-methode. Vergelijk de resultaten van het onderstaande voorbeeld met die van eerder.

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").get_text())
copy
Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 3. Hoofdstuk 1
some-alt