Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Attributter og Indhold af Element | Arbejde med Elementattributter i Beautiful Soup
Web Scraping med Python

bookAttributter og Indhold af Element

De tidligere gennemgåede metoder returnerer specifikke dele af HTML-koden. BeautifulSoup giver dig også mulighed for at tilgå attributter og indhold af bestemte elementer. For at hente et elements attributter, anvend .attrs-attributten. For eksempel kan du hente attributterne for det første <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

Resultatet af brugen af .attrs-attributten er en ordbog, hvor nøglerne er attributnavne og værdierne er deres tilsvarende værdier. For at få indholdet inde i et tag, anvend .contents-attributten. For eksempel kan du undersøge indholdet af det første <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

Som det kan ses ovenfor, blev alle linjeskiftstegn inkluderet i en liste over elementer, hvilket muligvis ikke er den mest ønskelige repræsentation af indholdet. Hvis du kun ønsker at udtrække teksten inden for et specifikt element, benyt metoden .get_text(). Sammenlign resultaterne fra eksemplet nedenfor med det tidligere opnåede.

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
Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 3. Kapitel 1

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

bookAttributter og Indhold af Element

Stryg for at vise menuen

De tidligere gennemgåede metoder returnerer specifikke dele af HTML-koden. BeautifulSoup giver dig også mulighed for at tilgå attributter og indhold af bestemte elementer. For at hente et elements attributter, anvend .attrs-attributten. For eksempel kan du hente attributterne for det første <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

Resultatet af brugen af .attrs-attributten er en ordbog, hvor nøglerne er attributnavne og værdierne er deres tilsvarende værdier. For at få indholdet inde i et tag, anvend .contents-attributten. For eksempel kan du undersøge indholdet af det første <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

Som det kan ses ovenfor, blev alle linjeskiftstegn inkluderet i en liste over elementer, hvilket muligvis ikke er den mest ønskelige repræsentation af indholdet. Hvis du kun ønsker at udtrække teksten inden for et specifikt element, benyt metoden .get_text(). Sammenlign resultaterne fra eksemplet nedenfor med det tidligere opnåede.

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
Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 3. Kapitel 1
some-alt