Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Attributter og Innhold i Elementet | Arbeide med Elementattributter i Beautiful Soup
Webskraping med Python

bookAttributter og Innhold i Elementet

Metodene som ble gjennomgått tidligere returnerer spesifikke deler av HTML-koden. BeautifulSoup gir deg også muligheten til å få tilgang til attributter og innhold for bestemte elementer. For å hente attributtene til et element, bruk .attrs-attributtet. For eksempel kan du hente attributtene til det første <div>-elementet.

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

Resultatet av å bruke .attrs-attributtet er en ordbok der nøklene er attributtnavn og verdiene er deres tilhørende verdier. For å hente innholdet inne i en tagg, bruk .contents-attributtet. For eksempel kan du sjekke innholdet i det første <div>-elementet.

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

Som observert ovenfor, ble alle linjeskift inkludert i en liste over elementer, noe som kanskje ikke er den mest hensiktsmessige representasjonen av innholdet. Hvis du ønsker å hente ut kun teksten innenfor et spesifikt element, bruk metoden .get_text(). Sammenlign resultatene fra eksempelet under med det som ble oppnådd tidligere.

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
Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 3. Kapittel 1

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

Awesome!

Completion rate improved to 4.35

bookAttributter og Innhold i Elementet

Sveip for å vise menyen

Metodene som ble gjennomgått tidligere returnerer spesifikke deler av HTML-koden. BeautifulSoup gir deg også muligheten til å få tilgang til attributter og innhold for bestemte elementer. For å hente attributtene til et element, bruk .attrs-attributtet. For eksempel kan du hente attributtene til det første <div>-elementet.

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

Resultatet av å bruke .attrs-attributtet er en ordbok der nøklene er attributtnavn og verdiene er deres tilhørende verdier. For å hente innholdet inne i en tagg, bruk .contents-attributtet. For eksempel kan du sjekke innholdet i det første <div>-elementet.

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

Som observert ovenfor, ble alle linjeskift inkludert i en liste over elementer, noe som kanskje ikke er den mest hensiktsmessige representasjonen av innholdet. Hvis du ønsker å hente ut kun teksten innenfor et spesifikt element, bruk metoden .get_text(). Sammenlign resultatene fra eksempelet under med det som ble oppnådd tidligere.

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
Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 3. Kapittel 1
some-alt