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 eerder behandelde methoden geven specifieke delen van de HTML-code terug. Met BeautifulSoup kun je ook de attributen en inhoud van bepaalde elementen benaderen. Gebruik het .attrs-attribuut om de attributen van een element op te halen. Haal bijvoorbeeld de attributen op van het eerste <div>-element.

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 resultaat van het gebruik van het .attrs-attribuut is een woordenboek waarbij de sleutels de namen van de attributen zijn en de waarden de bijbehorende waarden. Gebruik het .contents-attribuut om de inhoud binnen een tag op te halen. Controleer bijvoorbeeld de inhoud van het eerste <div>-element.

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 met 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 eerder behandelde methoden geven specifieke delen van de HTML-code terug. Met BeautifulSoup kun je ook de attributen en inhoud van bepaalde elementen benaderen. Gebruik het .attrs-attribuut om de attributen van een element op te halen. Haal bijvoorbeeld de attributen op van het eerste <div>-element.

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 resultaat van het gebruik van het .attrs-attribuut is een woordenboek waarbij de sleutels de namen van de attributen zijn en de waarden de bijbehorende waarden. Gebruik het .contents-attribuut om de inhoud binnen een tag op te halen. Controleer bijvoorbeeld de inhoud van het eerste <div>-element.

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 met 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