Data Scraping: Wieso wird keine Auslastung angegeben?

jo135  20.07.2023, 14:38
dieser funktioniert aber nicht

Das ist keine sinnvoll verwertbare Fehlerbeschreibung. Was erwartest du, was passiert stattdessen?

SDGuuhASDgjkSA 
Fragesteller
 20.07.2023, 14:43

es gibt keine auslastung an, also einfach nichts

1 Antwort

soup = BeautifulSoup(response.content, "html.parser")
    auslastung_element = soup.find("span", class_="js-free-spots")

Dank deiner hochpräzisen Fehlerbeschreibung kann man nur raten, aber ich vermute mal aus Lebenserfahrung und der Bezeichnung "js-free-spots", dass das Element, das du hier abfragen willst, durch JavaScript-Code befüllt wird.

Mit einem einfachen HTML-Parser läuft natürlich kein JavaScript, somit gibt's auch keinen Inhalt.

Die übliche Alternative ist es dann, einen Browser "headless" fernzusteuern. Selenium war/ist dafür recht beliebt. Der eigentliche Scraping-Code ist dann mehr oder weniger derselbe.

Alternativ kannst du natürlich auch versuchen rauszufinden, woher der Javascript-Code die Daten kriegt und diese Quelle direkt anzapfen. Wer weiß, vielleicht spart dir das dann sogar das Scraping.