Files
Tirsvad f873bf4e2c Translate the wiki to Danish
Task: MIL-005#2
Closes #30
2026-10-28 14:35:01 +08:00

2.4 KiB

English · Dansk · Bahasa Melayu

Parsing af HTML

Forelæsninger: Parsing af HTML og at lave suppe og Find og vælg elementer. Eksempelsiden er tests/fixtures/website.html; koden er soup_basics.py.

Trin 1: lav en suppe og læs titlen

BeautifulSoup(html, "html.parser") gør HTML-teksten til et suppe-objekt. soup.title.string er teksten i title-tagget.

Trin 1: soup title

Hvad vi lærte: HTML-tekst bliver til et objekt, vi kan navigere i, og et tag nås med almindelig attributadgang.

Trin 2: prettify

soup.prettify() skriver dokumentet med ét tag pr. linje, så indlejringen bliver synlig.

Trin 2: prettify

Hvad vi lærte: når vi først læser strukturen, ved vi, hvad vi skal spørge om.

Trin 3: find alle tags

find_all("a") giver alle links. I en løkke giver get_text() teksten og get("href") adressen.

Trin 3: find_all

Hvad vi lærte: ét kald finder mange elementer, og en løkke gør dem til data.

Trin 4: find med id og klasse

find(id="name") finder ét tag via dets id. find_all("h3", class_="heading") filtrerer på tag og klasse; nøgleordet er class_, fordi class er et reserveret ord i Python.

Trin 4: find via attribut

Hvad vi lærte: attributter indsnævrer en søgning, og vi undgår sammenstød med reserverede ord.

Trin 5: CSS-selektorer

select_one("p a") og select(".heading") bruger de samme selektorer som CSS, så indlejrede elementer nås i ét udtryk.

Trin 5: select

Hvad vi lærte: CSS-selektorer er den korteste måde at beskrive, hvor et element sidder i dokumentet.

Hvad vi lærte

Vi kan læse en HTML-fil ind i BeautifulSoup, se dens struktur og udvælge enkelte eller mange elementer via tag, id, klasse eller CSS-selektor.