Aktuell 22. Juli 2019

Datenerhebung mittels Webcrawling

Anhand des Praxisbeispiels Airbnb zeigen wir auf, wie mittels Webcrawler öffentlich verfügbare Daten automatisiert erhoben und analysiert werden können.

Webcrawling am Beispiel Airbnb

Das amerikanische Unternehmen Airbnb gehört zurzeit zu den wertvollsten Startups auf der Welt mit einem geschätzten Marktwert von rund 35 Milliarden Dollar. Airbnb betreibt eine Online-Plattform, auf der Privatpersonen ihr Haus, ihre Wohnung oder ihr Zimmer zur Untermiete anbieten. Die Plattform hat in den letzten Jahren schweizweit enorm an Popularität gewonnen. So hat sich das Angebot von Airbnb seit 2016 von 15´500 auf rund 31´000 Unterkünfte verdoppelt. Weil Datahouse den Immobilienmarkt interessiert beobachtet, entwickelten wir einen Webcrawler, um die Angebote von Airbnb genauer zu analysieren.

Was ist ein Webcrawler?

Ein Webcrawler (auch Spider oder Scraper genannt) ist ein Computerprogramm, das automatisiert im Internet surft und dabei gewünschte Daten aufspürt und abspeichert. Webcrawler werden vielseitig eingesetzt, zum Beispiel für den Aufbau von Suchmaschinen (Google), von Vergleichs- und Inserat-Portalen (Trivago) oder für Forschungszwecke (Sentiment-Analysen in sozialen Medien). Allerdings werden Webcrawler auch für unerwünschte Anwendungen eingesetzt, etwa um E-Mail-Adressen zu sammeln für das Versenden von Spam-Nachrichten. Zudem behindern viele Webcrawler den Internetverkehr. Laut einer Studie von Imperva verursachen Webcrawler bis zu 51.8 Prozent des gesamten Internet-Datenverkehrs (Bot Traffic Report, 2016)

Wie funktioniert ein Webcrawler?

Für den Airbnb-Crawler interessieren uns die Eigenschaften und Übernachtungspreise aller Schweizer Unterkünfte. Da diese Informationen nicht zentral abrufbar sind, muss der Crawler alle Webseiten der einzelnen Unterkünfte abfragen. Was ein Besucher auf diesen Webseiten sieht, ist im Hintergrund als HTML-Code definiert, welcher vom Internetbrowser beim Seitenaufruf heruntergeladen und in eine übersichtliche Anzeige umgewandelt wird. Diesen HTML-Code analysieren wir, um die Position der Codeblöcke mit den relevanten Angaben aufzuspüren und so die Abfrage der Daten für jede einzelne Unterkunft zu automatisieren. Teilweise enthält der HTML-Code auch Informationen, die nicht direkt auf der Webseite angezeigt werden. So können beispielsweise die Verfügbarkeit und alle Übernachtungspreise für das kommende Jahr direkt herausgelesen werden. Schliesslich definieren wir einen Zeitplan für den Crawler, um die Daten regelmässig abzufragen und schreiben sie in einer strukturierten Form in eine Datenbank.


Abbildung 1: Datenextraktion aus dem HTML-Code

Datenanalyse

Unser Webcrawler hat etwas mehr als 31'000 Airbnbs in der Schweiz gefunden. Am häufigsten befinden sich die Airbnbs in den Grossstädten wie Zürich (1'654), Basel (1'412), Genf (1'218) und Lausanne (656), in den bekannten Tourismusregionen wie Luzern (430), Lugano (308), Interlaken (298) und Montreux (200), wie auch in den Skiregionen im Wallis und Graubünden. In den Skiregionen werden hauptsächlich Ferienwohnungen angeboten (nur 9 Prozent Privatzimmer), wohingegen in den Städten vermehrt einzelne Zimmer inseriert sind (38 Prozent Privatzimmer). Etwa ein Drittel der Airbnbs sind für zwei Personen, 23 Prozent für vier Personen und 12 Prozent für sechs Personen gedacht.

Abbildung 2: Übersicht der verfügbaren Unterkünften nach Unterkunftstyp

Die teuersten Airbnbs (mittlerer Preis für zwei Personen pro Nacht) befinden sich in den Ortschaften Bagnes (161 CHF), Luzern (144 CHF) und in Zermatt (138 CHF). Diese Preise fluktuieren aber stark über das Jahr hinweg. Um dies besser darzustellen, haben wir die Übernachtungspreise für jede Unterkunft auf deren Minimalpreis indiziert. Einen besonders spannenden Verlauf zeigt die Gemeinde Davos (siehe Abbildung 3). Die kurzfristigen Preiszyklen zeigen erhöhte Preise während dem Wochenende. Im Durchschnitt sind die Preise am Wochenende zwei Prozent höher als unter der Woche. Die langfristigen Preiszyklen widerspiegeln die Nachfrage während der Hauptsaison (Dezember bis Mai). In dieser sind die Preise im Durchschnitt 10 Prozent höher als in der Nebensaison. Besonders begehrt sind Airbnbs während den Weihnachtsferien und dem Weltwirtschaftsforum (WEF), wo man im Durchschnitt ein Drittel mehr, respektive das Doppelte als während der Nebensaison bezahlen muss.

Abbildung 3: Preisfluktuation anhand der Gemeinde Davos

Konklusion

Webcrawler bieten eine wichtige Möglichkeit, relevante öffentlich verfügbare Daten zu erheben, die nicht in aufbereiteter Form zur Verfügung gestellt werden. Sie erlauben es, Informationen auf Webseiten automatisiert und regelmässig abzufragen und in einer strukturierten Form zu speichern. Entsprechende Datensätze sind für diverse Unternehmen oder für die öffentliche Hand sehr wertvoll. Diese Airbnb-Daten können beispielsweise in der Hotellerie zugezogen werden, um die Zimmerpreise dynamischer zu gestalten oder in der Stadtverwaltung, um regulatorische Massnahmen für den lokalen Airbnb-Markt zu analysieren.

Falls auch Sie Webseiten mit wertvollen Informationen für ihr Unternehmen kennen, dann kontaktieren Sie uns, um die Möglichkeiten eines Datenbeschaffungs und -analyse Projekts zu diskutieren.


Autor

Andreas Thürlimann

Andreas Thürlimann

Trainee Data Science
+41 44 289 92 31
E-Mail

Andreas Thürlimann arbeitet seit März 2019 bei Datahouse und beschäftigt sich mit den Schwerpunktthemen Datenbeschaffung, Modellierung, Statistik und Prognosen.