Zurück zum Blog
Anleitungen
Robert MunceanuLast updated on Apr 28, 20267 min read

Wie man mit WebScrapingAPI jede Website scrapen kann

Wie man mit WebScrapingAPI jede Website scrapen kann

Wenn Sie sich für Web-Scraper interessieren und nach einer Lösung suchen, mit der Sie verschiedene Daten aus dem Internet extrahieren können, sind Sie hier genau richtig!

In diesem Artikel zeigen wir Ihnen, wie einfach es ist, mit WebScrapingAPI in nur wenigen Augenblicken die benötigten Informationen abzurufen und die Daten nach Belieben zu bearbeiten.

Es ist zwar möglich, einen eigenen Scraper zu erstellen, um Daten aus dem Web zu extrahieren, doch die Entwicklung würde viel Zeit und Mühe kosten, da dabei einige Herausforderungen zu bewältigen sind. Und Zeit ist ein entscheidender Faktor.

Lassen Sie uns also ohne weitere Umschweife sehen, wie Sie mit WebScrapingAPI Daten von jeder beliebigen Website extrahieren können. Zunächst gehen wir jedoch darauf ein, warum Web-Scraper so wertvoll sind und wie sie Ihnen oder Ihrem Unternehmen helfen können, Ihre Wachstumsziele zu erreichen.

Wie Web-Scraping Ihnen helfen kann

Web-Scraping kann für verschiedene Zwecke nützlich sein. Unternehmen nutzen Datenextraktions-Tools, um ihr Geschäft auszubauen. Forscher können die Daten verwenden, um Statistiken zu erstellen oder ihre Abschlussarbeiten zu unterstützen. Schauen wir uns an, wie:

  • Preisoptimierung: Ein besserer Überblick über Ihre Konkurrenz kann Ihrem Unternehmen beim Wachstum helfen. So wissen Sie, wie die Preise in der Branche schwanken und wie sich das auf Ihr Geschäft auswirken kann. Selbst wenn Sie nach einem Artikel suchen, den Sie kaufen möchten, kann dies Ihnen helfen, Preise verschiedener Anbieter zu vergleichen und das beste Angebot zu finden.
  • Forschung: Dies ist eine effiziente Methode, um Informationen für Ihr Forschungsprojekt zu sammeln. Statistiken und Datenberichte sind entscheidend für die Glaubwürdigkeit Ihrer Berichte. Der Einsatz eines Web-Scraping-Tools beschleunigt diesen Prozess.
  • Maschinelles Lernen: Um Ihre KI zu trainieren, benötigen Sie eine große Datenmenge, und diese manuell zu extrahieren, kann sehr zeitaufwendig sein. Wenn Sie beispielsweise möchten, dass Ihre KI Hunde auf Fotos erkennt, benötigen Sie viele Welpenbilder.

Die Liste ließe sich fortsetzen, aber Sie sollten sich vor allem merken, dass Web-Scraping ein sehr wichtiges Werkzeug ist, da es viele Anwendungsmöglichkeiten bietet – genau wie ein Schweizer Taschenmesser! Wenn Sie neugierig sind, wann Web-Scraping die Lösung für Ihre Probleme sein kann, schauen Sie doch einfach mal vorbei!

Als Nächstes sehen Sie einige Funktionen und erfahren, wie WebScrapingAPI Ihnen helfen kann, das Web zu scrapen und Daten zu extrahieren, als würde niemand zusehen!

Was WebScrapingAPI zu bieten hat

Wahrscheinlich hast du darüber nachgedacht, dein eigenes Web-Scraping-Tool zu erstellen, anstatt ein vorgefertigtes zu verwenden, aber es gibt viele Dinge, die du berücksichtigen musst, und diese können viel Zeit und Mühe kosten.

Nicht alle Websites wollen gescrapt werden, daher entwickeln sie Gegenmaßnahmen, um den Bot zu erkennen und daran zu hindern, Ihre Aufgaben auszuführen. Sie können verschiedene Methoden einsetzen, wie CAPTCHAs, Ratenbegrenzung und Browser-Fingerprinting. Wenn sie Ihre IP-Adresse als etwas verdächtig einstufen, stehen die Chancen gut, dass Sie nicht allzu lange scrapen können.

Manche Websites wollen nur in bestimmten Regionen der Welt gecrawlt werden, sodass du einen Proxy verwenden musst, um auf ihre Inhalte zuzugreifen. Aber die Verwaltung eines Proxy-Pools ist ebenfalls keine leichte Aufgabe, da du die Proxys ständig wechseln musst, um unentdeckt zu bleiben, und spezifische IP-Adressen für geografisch eingeschränkte Inhalte verwenden musst.

Trotz all dieser Probleme nimmt WebScrapingAPI dir diese Last von den Schultern und löst die Probleme mühelos, sodass das Scraping wie ein Kinderspiel erscheint. Schau es dir an und überzeuge dich selbst, welche Hindernisse beim Web-Scraping auftreten können!

Da wir nun wissen, wie WebScrapingAPI uns helfen kann, wollen wir herausfinden, wie man es nutzt – und seien Sie versichert, dass auch das ziemlich einfach ist!

So nutzen Sie WebScrapingAPI

API-Zugriffsschlüssel & Authentifizierung

Das Wichtigste zuerst: Wir benötigen einen Zugangsschlüssel, um WebScrapingAPI nutzen zu können. Um diesen zu erhalten, müssen Sie ein Konto erstellen. Der Vorgang ist ziemlich unkompliziert, und Sie müssen nichts bezahlen, da es auch einen kostenlosen Tarif gibt!

Nach der Anmeldung wirst du zum Dashboard weitergeleitet, wo du deinen individuellen Zugangsschlüssel sehen kannst. Achte darauf, ihn geheim zu halten, und solltest du jemals den Verdacht haben, dass dein individueller Schlüssel kompromittiert wurde, kannst du jederzeit die Schaltfläche „API-Schlüssel zurücksetzen“ nutzen, um einen neuen zu erhalten.

Nachdem Sie Ihren Schlüssel erhalten haben, können wir zum nächsten Schritt übergehen und sehen, wie wir ihn nutzen können.

Dokumentation

Es ist wichtig zu wissen, welche Funktionen WebScrapingAPI bietet, um uns bei unserem Web-Scraping-Abenteuer zu unterstützen. All diese Informationen finden Sie in der Dokumentation, die detailliert und mit Code-Beispielen in verschiedenen Programmiersprachen dargestellt ist.  All dies dient dazu, besser zu verstehen, wie die Dinge funktionieren und wie sie in Ihr Projekt integriert werden können. Die grundlegendste Anfrage, die Sie an die API stellen können, besteht darin, die Parameter „api_key“ und „url“ auf Ihren Zugangsschlüssel bzw. die URL der Website zu setzen, die Sie scrapen möchten. Hier ist ein kurzes Beispiel in Python:

import http.client
conn = http.client.HTTPSConnection("api.webscrapingapi.com")
conn.request("GET", "/v1?api_key=XXXXX&url=http%3A%2F%2Fhttpbin.org%2Fip")
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))

WebScrapingAPI verfügt über weitere Funktionen, die für das Scraping genutzt werden können. Einige davon lassen sich durch die Einstellung weiterer Parameter nutzen, andere sind bereits in der API implementiert, wie wir zuvor erwähnt haben.

Sehen wir uns einige weitere Parameter an, die wir setzen können, und warum sie für unsere Datenextraktion nützlich sind:

  • render_js: Manche Websites rendern wichtige Seitenelemente möglicherweise mit JavaScript, was bedeutet, dass bestimmte Inhalte beim ersten Laden der Seite nicht angezeigt und daher nicht gescrapt werden. Mithilfe eines Headless-Browsers kann WSA diese Inhalte rendern und für Sie scrapen, damit Sie sie nutzen können. Setzen Sie einfach render_js=1, und schon kann es losgehen!
  • proxy_type: Sie können auswählen, welche Art von Proxys verwendet werden soll. Hier erfahren Sie, warum Proxys so wichtig sind und wie sich die Art des Proxys auf Ihr Web-Scraping auswirken kann.
  • country: Geolokalisierung ist nützlich, wenn Sie von verschiedenen Standorten aus scrapen möchten, da der Inhalt einer Website je nach Region unterschiedlich oder sogar exklusiv sein kann. Hier geben Sie den von WSA unterstützten zweistelligen Ländercode ein.

API-Playground

Wenn Sie die WebScrapingAPI in Aktion sehen möchten, bevor Sie sie in Ihr Projekt integrieren, können Sie den Playground nutzen, um einige Ergebnisse zu testen. Er verfügt über eine benutzerfreundliche Oberfläche und ist einfach zu bedienen. Wählen Sie einfach die Parameter entsprechend der Art des Scrapings aus, das Sie durchführen möchten, und senden Sie die Anfrage.

Im Ergebnisbereich sehen Sie die Ausgabe nach Abschluss des Scrapings sowie den Code-Beispiel für die betreffende Anfrage in verschiedenen Programmiersprachen, um die Integration zu erleichtern.

API-Integration

Wie können wir WSA in unserem Projekt nutzen? Schauen wir uns dieses kurze Beispiel an, in dem wir Amazon scrapen, um die teuerste Grafikkarte auf einer Seite zu finden. Dieses Beispiel ist in JavaScript geschrieben, aber du kannst es in jeder Programmiersprache umsetzen, mit der du vertraut bist.

Zunächst müssen wir einige Pakete installieren, die uns bei der HTTP-Anfrage (got) und der Auswertung des Ergebnisses (jsdom) helfen. Verwenden Sie dazu diesen Befehl im Terminal des Projekts:

npm install got jsdom

Unser nächster Schritt besteht darin, die für unsere Anfrage erforderlichen Parameter festzulegen:

const params = {
   api_key: "XXXXXX",
   url: "https://www.amazon.com/s?k=graphic+card"
}

So bereiten wir die Anfrage an die WebScrapingAPI vor, damit diese die Website für uns scrapt:

const response = await got('https://api.webscrapingapi.com/v1', {searchParams: params})

Nun müssen wir herausfinden, wo sich jedes Grafikkarten-Element innerhalb des HTML-Codes befindet. Mithilfe des Entwickler-Tools haben wir festgestellt, dass die Klasse s-result-item alle Details zum Produkt enthält, wir jedoch nur den Preis benötigen.

Innerhalb des Elements sehen wir einen Preis-Container mit der Klasse „a-price“ und der Unterklasse „a-offscreen“, aus dem wir den Text extrahieren werden, der den Preis darstellt.

WebScrapingAPI gibt die Seite im HTML-Format zurück, daher müssen wir sie parsen. JSDOM ist dafür das richtige Werkzeug.

const {document} = new JSDOM(response.body).window

Nachdem wir die Anfrage gesendet und die von WSA empfangene Antwort parst haben, müssen wir das Ergebnis filtern und nur das extrahieren, was für uns wichtig ist. Aus dem vorherigen Schritt wissen wir, dass sich die Details jedes Produkts in der Klasse „s-result-item“ befinden, also durchlaufen wir diese. Innerhalb jedes Elements prüfen wir, ob der Preis-Container der Klasse „a-price“ vorhanden ist, und wenn ja, extrahieren wir den Preis aus dem darin enthaltenen Element „a-offscreen“ und fügen ihn einem Array hinzu.

Herauszufinden, welches das teuerste Produkt ist, sollte nun ein Kinderspiel sein. Durchlaufen Sie einfach das Array und vergleichen Sie die Preise miteinander.

Wenn wir das Ganze in eine asynchrone Funktion verpacken, sollte der endgültige Code wie folgt aussehen:

const {JSDOM} = require("jsdom");
const got = require("got");
(async () => {
   const params = {
       api_key: "XXX",
       url: "https://www.amazon.com/s?k=graphic+card"
   }
   const response = await got('https://api.webscrapingapi.com/v1', {searchParams: params})
   const {document} = new JSDOM(response.body).window
   const products = document.querySelectorAll('.s-result-item')
   const prices = []
   products.forEach(el => {
       if (el) {
           const priceContainer = el.querySelector('.a-price')
           if (priceContainer)               prices.push(priceContainer.querySelector('.a-offscreen').innerHTML)
       }
   })
   let most_expensive = 0
   prices.forEach((price) => {
       if(most_expensive < parseFloat(price.substring(1))) 
most_expensive = parseFloat(price.substring(1))
   })
     console.log("The most expensive item is: ", most_expensive)
})();

Abschließende Gedanken

Wir hoffen, dieser Artikel hat dir gezeigt, wie nützlich ein vorgefertigtes Web-Scraping-Tool sein kann und wie einfach es ist, es in deinem Projekt einzusetzen. Es umgeht die von Websites gesetzten Hindernisse, hilft dir, unauffällig im Internet zu scrapen, und kann dir zudem viel Zeit sparen.

Probieren Sie WebScrapingAPI doch einfach mal aus! Überzeugen Sie sich selbst davon, wie nützlich es ist, falls Sie das noch nicht getan haben. Die Erstellung eines Kontos ist kostenlos und 1000 API-Aufrufe helfen Ihnen dabei, Ihr Web-Scraping-Abenteuer zu beginnen.

Fangen Sie gleich an!

Über den Autor
Robert Munceanu, Full-Stack-Entwickler @ WebScrapingAPI
Robert MunceanuFull-Stack-Entwickler

Robert Munceanu ist Full-Stack-Entwickler bei WebScrapingAPI, wo er in allen Bereichen des Produkts mitwirkt und an der Entwicklung zuverlässiger Tools und Funktionen zur Unterstützung der Plattform mitwirkt.

Los geht’s

Sind Sie bereit, Ihre Datenerfassung zu erweitern?

Schließen Sie sich den über 2.000 Unternehmen an, die WebScrapingAPI nutzen, um Webdaten im Unternehmensmaßstab ohne zusätzlichen Infrastrukturaufwand zu extrahieren.