Was ist Data Scraping?

Angreifer können mit Web-Scraping-Tools viel schneller als vorgesehen auf Daten zugreifen. Dies kann zur Folge haben, dass Daten für nicht autorisierte Zwecke verwendet werden.

Share facebook icon linkedin icon twitter icon email icon

Data Scraping

Lernziele

Nach Lektüre dieses Artikels können Sie Folgendes:

  • Definition von Data Scraping
  • Die Hintergründe von Web Scraping
  • Verstehen Sie die Methoden zur Abwehr von Data Scraping
  • Unterschied zwischen Data Scraping und Data Crawling

Was ist Data Scraping?

Mit Data Scraping ist in seiner allgemeinsten Form eine Technik gemeint, bei der ein Computerprogramm Daten aus dem Output eines anderen Programms extrahiert. Data Scraping findet häufig beim Web-Scraping statt. Bei diesem Prozess wird eine Anwendung verwendet, um wertvolle Informationen aus einer Website zu extrahieren.

Data Scraping

Warum Daten von einer Website scrapen?

Unternehmen möchten in der Regel nicht, dass ihre einzigartigen Inhalte heruntergeladen und für nicht autorisierte Zwecke wiederverwendet werden. Daher stellen sie nicht alle Daten über eine öffentliche API oder andere leicht zugängliche Ressourcen zur Verfügung. Scraper-Bots hingegen möchten an Website-Daten herankommen, und zwar unabhängig davon, ob der Zugriff eingeschränkt ist. Daher beginnt ein Katz-und-Maus-Spiel zwischen Web-Scraping-Bots und verschiedenen Strategien zum Schutz von Inhalten, bei dem jeder versucht, den anderen zu überlisten.

Der Prozess des Web Scraping ist ziemlich einfach, auch wenn die Implementierung komplex sein kann.

  1. Zuerst sendet der Code-Teil, der zum Abrufen der Informationen verwendet wird und den wir einen Scraper-Bot nennen, eine HTTP-GET-Anfrage an eine bestimmte Website.
  2. Wenn die Website antwortet, analysiert der Scraper das HTML-Dokument nach einem bestimmten Datenmuster.
  3. Sobald die Daten extrahiert sind, werden sie in ein beliebiges spezifisches Format umgewandelt, das vom Autor des Scraper-Bots entworfen wurde.

Scraper Bots können für viele Zwecke ausgelegt sein, z. B.:

  1. Content Scraping – Inhalte können von der Website entnommen werden, um den einzigartigen Vorteil eines bestimmten Produkts oder einer Dienstleistung, die auf Inhalte angewiesen ist, zu replizieren. Ein Produkt wie Yelp stützt sich z. B. auf Rezensionen; ein Wettbewerber könnte alle Rezensionsinhalte von Yelp scrapen, die Inhalte auf seiner eigenen Website reproduzieren und vorgeben, dass die Inhalte das Original sind.
  2. Price-Scraping – Durch das Scrapen von Preisdaten können Wettbewerber Informationen über ihre Konkurrenz sammeln. Dadurch können sie einen einzigartigen Vorteil erzielen.
  3. Contact-Scraping – Viele Websites enthalten E-Mail-Adressen und Telefonnummern als Klartext. Durch das Scrapen von Seiten wie einem Online-Mitarbeiterverzeichnis kann ein Scraper Kontaktdaten für Massen-Mailinglisten, Robo-Calls oder böswillige Social-Engineering-Versuche sammeln. Dies ist eine der wichtigsten Methoden, mit denen sowohl Spammer als auch Betrüger neue Ziele entdecken.

Wie wird Web-Scraping bekämpft?

In der Regel müssen alle Inhalte, die ein Besucher der Website einsehen kann, auf den Rechner des Besuchers übertragen werden, und alle Informationen, auf die ein Besucher zugreifen kann, können von einem Bot abgefischt werden.

Man kann Maßnahmen gegen Web-Scraping ergreifen. Nachfolgend stellen wir Ihnen drei Methoden vor, mit denen Sie das Risiko von Data-Scraping-Angriffen senken:

  1. Rate-Limit-Anfragen – Bei einem menschlichen Besucher, der über eine Reihe von Webseiten auf eine Webseite klickt, kann die Geschwindigkeit der Interaktion mit der Webseite ziemlich vorhersehbar sein; ein Mensch kann z. B. niemals 100 Webseiten pro Sekunde besuchen. Andererseits können Computer Anfragen um ein Zigfaches schneller als ein Mensch stellen, und einfache Data Scraper können mit ungedrosselten Scraping-Techniken versuchen, eine ganze Website sehr schnell zu scannen. Durch die Begrenzung der maximalen Anzahl von Anfragen (Rate Limiting), die eine bestimmte IP-Adresse in einem bestimmten Zeitraum stellen kann, können sich Websites vor ausbeuterischen Anfragen schützen und die Menge an Data Scraping begrenzen, die innerhalb eines bestimmten Zeitfensters auftreten kann.
  2. HTML-Markup in regelmäßigen Abständen ändern – Data Scraping Bots verlassen sich darauf, dass eine Website einheitlich formatiert ist und die Inhalte deshalb effektiv durchgegangen und nützliche Daten analysiert und gespeichert werden können. Eine Methode, diesen Ablauf zu unterbrechen, ist das regelmäßige Ändern von Elementen des HTML-Markups, um das einheitliche Scraping zu erschweren. Durch Verschachtelung von HTML-Elementen oder die Änderung anderer Teile des Markups werden einfache Data Scraping-Angriffe behindert oder vereitelt. Bei einigen Websites werden jedes Mal, wenn eine Webseite gerendert wird, bestimmte Formen von Änderungen am Inhaltsschutz zufällig vorgenommen und implementiert. Andere Websites ändern gelegentlich ihren Markup-Code, um längerfristige Data-Scraping-Angriffe zu verhindern.
  3. Verwendung von CAPTCHAs für umfangreiche Anforderungen – Zusätzlich zu einer Rate-Limiting-Lösung kann man Content Scraper auch dadurch aufhalten, dass man Website-Besuchern eine Aufgabe vorlegt, die für einen Computer schwer zu bewältigen ist. Während ein Mensch die Aufgabe angemessen lösen kann, kann und wird ein Headless-Browser* dies beim Data Scraping höchstwahrscheinlich nicht und vor allem nicht über viele Instanzen der Aufgabe hinweg durchgehend schaffen. Ständige CAPTCHA-Aufgaben können sich jedoch negativ auf die Nutzererfahrung auswirken.

Eine weitere, weniger verbreitete Abwehrmethode ist die Einbettung von Inhalten in Medienobjekte wie Bilder. Da der Inhalt nicht in einer Zeichenkette vorliegt, ist das Kopieren des Inhalts wesentlich komplexer und erfordert optische Zeichenerkennung (OCR), um die Daten aus einer Bilddatei zu extrahieren. Dies kann jedoch auch Webnutzer daran hindern, Inhalte wie eine Adresse oder Telefonnummer von einer Website zu kopieren, anstatt sie sich merken oder abtippen zu müssen.

*Ein Headless-Browser ist eine Art Webbrowser, ähnlich wie Chrome oder Firefox, aber er verfügt standardmäßig nicht über eine visuelle Benutzeroberfläche, wodurch er viel schneller agieren kann als ein herkömmlicher Webbrowser. Durch die Ausführung auf Befehlszeilenebene kann ein Headless-Browser die Darstellung ganzer Webanwendungen vermeiden. Data Scraper schreiben Bots, die Daten mit Headless-Browsern schneller abrufen, denn kein Mensch schaut sich die zu scrapende Seite überhaupt an.

Wie kann man Web Scraping ganz stoppen?

Die einzige Möglichkeit, Web-Scraping ganz zu unterbinden, besteht darin, überhaupt keine Inhalte mehr auf eine Website zu stellen. Mit einer fortschrittlichen Bot-Management-Lösung können Websites jedoch den Zugriff für Scraper-Bots fast vollständig unterdrücken.

Was ist der Unterschied zwischen Data Scraping und Data Crawling?

Crawling bezieht sich auf den Prozess, den große Suchmaschinen wie Google ausführen, wenn sie ihre Roboter-Crawler wie Googlebot ins Netzwerk aussenden, um Internetinhalte zu indexieren. Das Scraping hingegen ist in der Regel speziell darauf ausgelegt, Daten von einer bestimmten Website zu extrahieren.

Nachfolgend sind drei Vorgehensweisen eines Scraper-Bots aufgeführt, die sich vom Verhalten eines Webcrawler-Bots unterscheiden:

  1. Scraper-Bots geben sich als Webbrowser aus, während ein Crawler-Bot seinen Zweck angibt und nicht versucht, einer Website vorzugaukeln, er sei etwas anderes.
  2. Manchmal führen Scraper erweiterte Aktionen durch, zum Beispiel das Ausfüllen von Formularen oder andere Verhaltensweisen, um einen bestimmten Teil der Website zu erreichen. Crawler machen das nicht.
  3. Scraper berücksichtigen die Datei robots.txt in der Regel nicht. Diese Textdatei ist speziell dafür bestimmt, Webcrawler anzuweisen, welche Daten sie analysieren dürfen und welche Bereiche der Website zu vermeiden sind. Ein Scraper kann so gestaltet werden, dass er genau die Inhalte extrahiert, die laut Kennzeichnung ausdrücklich zu ignorieren wären.

Cloudflare Bot-Management nutzt maschinelles Lernen und Verhaltensanalysen, um böswillige Bots zu erkennen. Einzigartige Inhalte können vor Scraping geschützt und der Missbrauch einer Website durch Bots kann verhindert werden.