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?

Data Scraping bezieht sich in seiner allgemeinsten Form auf eine Technik, bei der ein Computerprogramm Daten aus dem Output eines anderen Programms extrahiert. Data Scraping treten häufig beim Web-Scraping auf. 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 allgemeine API oder andere leicht zugängliche Ressourcen zur Verfügung. Scraper-Bots hingegen möchten Website-Daten erhalten, 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. Das Web Scraping erfolgt in 3 Schritten:

  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, wie 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 Orten, wie einem Online-Mitarbeiterverzeichnis, kann ein Scraper Kontaktdaten für Massen-Mailinglisten, Robo-Calls oder bösartige 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 gelöscht werden.

Es können Maßnahmen ergriffen werden, um das Auftreten von Web-Scraping einzuschränken. Nachfolgend stellen wir Ihnen 3 Methoden zur Begrenzung des Ausgesetztseins gegenüber Data Scraping-Angriffen vor:

  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 Data Scraper, die Anfänger sind, können mit ungehinderten Scraping-Techniken versuchen, eine ganze Website sehr schnell zu scannen. Durch die Begrenzung der maximalen Anzahl von Anfragen, die eine bestimmte IP-Adresse in einem bestimmten Zeitraum stellen kann, können sich Websites vor ausbeutenden 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 setzen auf eine einheitliche Formatierung, um Website-Inhalte effektiv zu durchlaufen und nützliche Daten zu analysieren und zu speichern. Eine Methode, diesen Workflow 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 vermeiden.
  3. Verwendung von CAPTCHAs für umfangreiche Anforderungen - Neben der Verwendung einer Rate Limiting-Lösung ist die Anforderung, dass ein Website-Besucher eine Aufgabe löst, die für einen Computer schwer zu bewältigen ist, ein weiterer nützlicher Schritt zur Verlangsamung von Content Scrapern. Während ein Mensch die Aufgabe angemessen lösen kann, kann und wird ein Headless-Browser*, der Data Scrapping ausführt, höchstwahrscheinlich nicht und sicherlich auch nicht über viele Instanzen der Aufgabe hinweg konsistent sein. Ständige CAPTCHA-Aufgaben können sich jedoch negativ auf die Nutzererfahrung auswirken.

Eine weitere, weniger verbreitete Abwehrmethode erfordert 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 diese zu speichern oder neu einzugeben.

*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 sich viel schneller bewegen 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 Headless-Browser verwenden, um Daten schneller anzufordern, da kein Mensch die jeweilige zu scrapende Seite ansieht.

Wie wird Web Scraping ganz gestoppt?

Die einzige Möglichkeit, Web-Scraping ganz einzustellen, besteht darin, keine Inhalte mehr vollständig auf eine Website zu stellen. Durch die Verwendung 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 3 der Vorgehensweisen aufgeführt, an denen ein Scraper-Bot beteiligt ist, 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, eine Website zu täuschen, so dass sie denkt, dass dieser etwas ist, was er nicht ist.
  2. Manchmal ergreifen Scraper fortgeschrittene Maßnahmen wie das Ausfüllen von Formularen oder andere Verhaltensweisen, um einen bestimmten Teil der Website zu erreichen. Crawler tun dies nicht.
  3. Scraper berücksichtigen in der Regel die robots.txt-Datei nicht. Diese Textdatei enthält Informationen und wurde speziell dafür entwickelt, Webcrawler anzuweisen, welche Daten sie analysieren dürfen und welche Bereiche der Website zu vermeiden sind. En Scraper kann so designt werden, dass er ausdrücklich als zu ignorierende gekennzeichnete Inhalte extrahiert.

Cloudflare Bot-Management nutzt maschinelles Lernen und Verhaltensanalysen, um bösartige Bots zu erkennen, wie z. B. Scraper-Schutz von einzigartigen Inhalten und die Verhinderung von Missbrauch einer Website durch Bots.