HTML er struktur
<h1>, <p> og <a> fortæller browseren, hvad indholdet er.
Fra rå HTML til strukturerede data
Laboratorium · Læs · Find · Strukturér
En browser viser en flot side, men Python kan hente den samme side som rå HTML-tekst. Med requests henter vi teksten, og med BeautifulSoup finder vi de tags, klasser og attributter, som indeholder de data, vi leder efter.
<h1>, <p> og <a> fortæller browseren, hvad indholdet er.
BeautifulSoup lader Python søge efter tags, klasser, id’er og attributter.
En løkke kan forvandle mange HTML-elementer til en liste eller en tabel.
.find()Python ser ikke overskriften som “stor tekst”. Python ser en tekst med tags. .find("h1") finder det første <h1>-element, og .get_text() henter teksten indeni.
.find() finde?Python ville finde: …
Vigtigt: I browseren er dette et lokalt eksempel, så du kan se hele processen. I Python kan html i stedet komme fra requests.get(url).text.
quotes.toscrape.com er en træningsside til webscraping. Hvert citat ligger i en div.quote med et tekst-element, en forfatter og tags.
Træningsside: Udsnittet nedenfor er indlejret, så laboratoriet også virker offline. Den viste Python-kode henter den rigtige side med requests.
books.toscrape.com ligner en lille webshop. Her skal vi navigere gennem flere tags og hente både tekst og attributter som bogens titel fra title.
| Titel | Pris | På lager? |
|---|
Struktur: Hvert resultat bliver gemt som en dictionary med nøglerne title, price og available. Det gør dataene nemme at sortere og analysere bagefter.
Vælg trin, læs koden, og ændr selectors direkte i editoren.