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

Metoderne, der er gennemgået i de foregående afsnit, returnerer specifikke dele af HTML-koden. BeautifulSoup gør det muligt at hente attributter og indhold fra bestemte elementer. For at få adgang til attributterne for et objekt, anvendes attributten .attrs. For eksempel kan vi 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

Det er vigtigt at bemærke, at resultatet af at bruge attributten .attrs er en ordbog, hvor nøglerne er attributnavne og værdierne er deres respektive værdier. Hvis du ønsker at hente indholdet, der er gemt i et tag, anvendes attributten .contents. For eksempel kan vi 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 ses ovenfor, blev alle linjeskiftstegn inkluderet i en liste af elementer, hvilket muligvis ikke er den mest ønskelige repræsentation af indholdet. For kun at udtrække teksten inden for et specifikt element, anvendes 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

Suggested prompts:

What is the difference between .attrs, .contents, and .get_text() in BeautifulSoup?

Can you explain how to use .attrs to get specific attribute values?

How can I extract text from other HTML elements using BeautifulSoup?

Awesome!

Completion rate improved to 4.35

bookAttributter og Indhold af Element

Stryg for at vise menuen

Metoderne, der er gennemgået i de foregående afsnit, returnerer specifikke dele af HTML-koden. BeautifulSoup gør det muligt at hente attributter og indhold fra bestemte elementer. For at få adgang til attributterne for et objekt, anvendes attributten .attrs. For eksempel kan vi 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

Det er vigtigt at bemærke, at resultatet af at bruge attributten .attrs er en ordbog, hvor nøglerne er attributnavne og værdierne er deres respektive værdier. Hvis du ønsker at hente indholdet, der er gemt i et tag, anvendes attributten .contents. For eksempel kan vi 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 ses ovenfor, blev alle linjeskiftstegn inkluderet i en liste af elementer, hvilket muligvis ikke er den mest ønskelige repræsentation af indholdet. For kun at udtrække teksten inden for et specifikt element, anvendes 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