1
Seite abrufen
Eine HTTP-Anfrage senden und HTML empfangen.
2
Seite rendern
Das JavaScript der Seite in einem echten Browser ausführen.
3
Daten finden
Elemente mit XPath oder CSS-Selektoren bestimmen.
4
Extrahieren und verfeinern
Werte auslesen und mit regulären Ausdrücken bereinigen.
5
Durch die Website navigieren
Paginierung und Anmeldesperren bewältigen.
6
Ausgabe speichern
Als CSV, JSON, in einer Datenbank oder über eine nachgelagerte API.
Seite abrufen
Alles beginnt mit einer Anfrage. Der Scraper sendet eine HTTP-Anfrage an eine URL und erhält eine Antwort – meist HTML, manchmal JSON. Bei einfachen serverseitig gerenderten Seiten liefert dieser Schritt alles Nötige. Allerdings ist die Antwort nur die anfängliche Nutzlast des Servers; bei vielen modernen Websites ist das kaum mehr als eine leere Hülle.Seite rendern
Erstellt eine Website ihre Inhalte mit JavaScript, stehen die gewünschten Daten nicht im ursprünglichen HTML, sondern erscheinen erst nach Ausführung der Skripte. Beim Rendern werden diese Skripte in einem echten Browser ausgeführt, damit der vollständige Inhalt sichtbar wird. Die hier verwendete Browser-Laufzeit bestimmt, wie originalgetreu die Seite geladen wird und wie viel Arbeitsspeicher und Zeit dies kostet. Sie bildet den Kern beim Scraping JavaScript-gerenderter Seiten.Daten finden
Nach dem vollständigen Laden muss der Scraper die gewünschten Bestandteile bestimmen – etwa einen Preis, einen Titel oder eine Tabellenzeile. Dazu dienen XPath oder CSS-Selektoren, die beschreiben, wo ein Element in der Seitenstruktur liegt. Gute Selektoren entscheiden darüber, ob ein Scraper kleinere Layoutänderungen übersteht oder bei jeder Aktualisierung der Website ausfällt.Extrahieren und verfeinern
Das Auffinden eines Elements liefert seinen Rohinhalt. Die Extraktion liest den Wert aus, die Verfeinerung bereinigt ihn. Ein ausgelesener Preis könnte beispielsweise als"$1,299.00 USD" vorliegen, obwohl Sie nur die Zahl benötigen. Reguläre Ausdrücke und Nachbearbeitungsregeln entfernen, teilen und formatieren Rohtext in die strukturierten Felder um, die tatsächlich gespeichert werden sollen.