Scraping (zu Deutsch schürfen/kratzen) als Kurzform von Screen Scraping oder Web Scraping ist ein Verfahren zum Auslesen von Informationen von Webseiten oder Online-Diensten. Der Vorgang kann manuell mit Kopieren und Einfügen erfolgen, oder mit Hilfe eines Web-Scraping-Tools oder eines Crwalers, wo die Informationen quasi vom Bildschirm gekratzt werden.
Um zum Beispiel mittels Web Scraping an die zu sammelnden Daten zu gelangen, sind nur wenige Schritte notwendig:
- Senden einer HTTP-GET-Anfrage an eine bestimmte URL.
- Sobald die Webseite antwortet, wird das HTML-Dokument vom Scraper nach dem konkreten Datenfeld durchsucht was angegeben wurde.
- Extrahieren der Daten und Erstellung eines Reports.
Bekannte Beispiele sind Suchmaschinen Crawler die kontinuierlich das Internet durchsuchen um Webseiten zu indizieren. Oder Vergleichsportale, die mit dieser Methode Daten sammeln, auswerten und bereitstellen. Mit Scraping-Tools lassen sich aber auch E-Mail-Adressen oder Social-Media-Profile sammeln und gebündelt an Dritte verkaufen.
Scraping an sich ist nicht immer legal und es muss vorab das Urheberrecht der Webseite berücksichtigt werden. Die Seitenbetreiber haben zudem das Recht technische Vorgänge zu installieren um das Web Scraping zu verhindern. Diese dürfen nicht umgangen werden. Solange aber die zu extrahierenden Daten frei zugänglich für Dritte im Netz stehen, ist Scraping nicht illegal.
Als Betreiber einer Webseite, hat man verschiedene Möglichkeiten, sich vor Scrapern und Crawlern zu schützen.
- Mit einer robots.txt Datei können Suchmaschinen-Bots blockiert werden sowie das automatische Scraping durch Software-Bots.
- Kontaktdaten und persönliche Informationen können in Bilder eingebettet werden, anstatt als Text.
- Mit Rate-Limiting lassen sich die Requests beschränken, die eine einzelne IP-Adresse innerhalb eines bestimmten Zeitraums stellen kann.
- Erfolgen mehrere Anfragen vom selben Server, kann der User gebeten werden seine Identität mittels eines CAPTCHA zu bestätigen.
- Um das Scraping von E-Mail-Adressen zu verhindern, kann statt eines @ ein [at] verwendet werden.