Zurück zum Blog
Anleitungen
Gabriel CiociLast updated on Mar 31, 20268 min read

Cheerio.load funktioniert nicht: So scrapen Sie Webseiten mit Cheerio

Cheerio.load funktioniert nicht: So scrapen Sie Webseiten mit Cheerio

Web-Scraping ist eine Technik, bei der Skripte eingesetzt werden, um zuverlässige Daten zu gewinnen. Web-Scraper sind in der Lage, innerhalb weniger Minuten Hunderte oder Tausende von Websites zu durchsuchen, sofern sie mit der richtigen Programmiersprache und den passenden Tools implementiert werden.

Es ist eine leistungsstarke Methode, um riesige Mengen an Informationen zu sammeln, die schnell verarbeitet und bereinigt werden können, um Daten zu extrahieren. Auch in Fällen von Produktfälschungen können Web-Scraping-Tools genutzt werden, um die Online-Plattformen nach allen gefälschten Artikeln zu durchsuchen.

Dank der vorhandenen Website-Links können Sie diese leicht melden. In der Vergangenheit war es jedoch ziemlich mühsam, alle Websites manuell zu durchsuchen. Auch wenn die Arbeit mit Web-Scraping-Daten auf den ersten Blick einfach erscheinen mag, ist sie das sicherlich nicht. Das Scraping ist ein komplizierter Prozess, der technisches Wissen erfordert.

Sicherlich werden Sie auf Tools wie ParseHub und Diffbot stoßen, die nur mit technischem Wissen genutzt werden sollten, aber im heutigen Artikel erfahren Sie mehr über „CHEERIO“, warum es manchmal nicht geladen wird und vieles mehr.

Cheerio.Load funktioniert nicht: Warum ist das so?

Cheerio.Load funktioniert nicht: Warum ist das so?

Manchmal wirst du feststellen, dass Cheerio.load nicht richtig funktioniert. Du weißt zwar, dass ein Problem vorliegt, kannst aber nicht herausfinden, wo es liegt. Denk daran: Die Komponente „<tbody“ sollte ein Kind der Komponente „<table“ sein. Wenn du diese Dinge nicht korrigierst, funktioniert Cheerio.load nicht.

In der aktuellen Version von Cheerio, die Markup parst, kann sich der Parser selbst von diesem speziellen Fehler nicht erholen. Du musst eine gültige HTML-Zeichenkette schreiben, was bedeutet, dass du die Zeichenkette in „</table>“ und „<table>“ einschließen musst. Wenn du auf Cheerio 0.22.0 downgradest, kümmern sich dessen Parser darum.

Cheerio: Was Sie wissen müssen

Cheerio: Was Sie wissen müssen

Was genau ist Cheerio also? Nun, es ist eine schlanke, flexible und schnelle Implementierung für einen bestimmten Server. Du fragst dich vielleicht, wozu Cheerio gut ist, wenn es doch „Puppeteer“ gibt, ein auf Node.JS basierendes Scraping-Tool.

Das liegt daran, dass Puppeteer viel häufiger zur Automatisierung von Browser-Aufgaben eingesetzt wird und das visuelle Surfen im Internet in Echtzeit in Form von Skript-Ausführungen unterstützt. Puppeteer funktioniert perfekt mit allen Websites, die mit React und Angular erstellt wurden. Mit Puppeteer können Sie auch PDFs erstellen und Screenshots machen.

Aber wenn es um Geschwindigkeit geht, ist Cheerio unschlagbar. Es ist ein minimalistisches Tool für Scraping-Aufgaben, das Sie zudem mit verschiedenen anderen Modulen kombinieren können, um ein End-to-End-Skript zu erstellen. Dieses spezielle Skript speichert die Ausgabe im CSV-Format und liefert darüber hinaus alle weiteren Daten zurück.

Cheerio ist zweifellos eine perfekte Wahl für Scraping-Aufgaben. Es funktioniert reibungslos mit HTML-Dokumenten und Chrome. Bei der Verwendung treten keine Probleme auf, aber Sie sollten wissen, wie es funktioniert, bevor Sie es einsetzen.

Wie kann man mit Cheerio Daten scrapen?

Wie kann man mit Cheerio Daten scrapen?

Wenn du Daten mit Hilfe von Cheerio scrapen möchtest, musst du folgende Schritte befolgen:

Schritt 1: Mkdir country-popular cd country-popular npm init

Schritt 2: npm install Cheerio Axios npm install -D typescript esbuild esbuild-runner

Schritt 3: "scripts" : [ "scrape": "esr./src/index.ts"]

Schritt 4: import cheerio from "cheerio"; const $ = Cheerio

Schritt 5: const firstHeader = $('h2.primary'); console

Schritt 6: npm run scrape

Wie kann man Daten von einer anderen Website abrufen?

Wie kann man Daten von einer anderen Website abrufen?

Möchten Sie Daten/Informationen von einer anderen Website abrufen? Befolgen Sie dazu diese 5 Schritte:

  • Sie müssen den HTML-Code der Website überprüfen, die Sie crawlen möchten
  • Rufen Sie die URL der Website mithilfe des Codes auf und laden Sie dann das HTML-Dokument sowie dessen Inhalte herunter.
  • Konvertieren Sie den Inhalt in ein lesbares Format
  • Danach müssen Sie alle nützlichen Informationen extrahieren und in einem strukturierten Format speichern.

Wie analysiert man eine Node.js-HTML-Datei?

Wie analysiert man eine Node.js-HTML-Datei?

Sie können die npm-Module htmlparser und jsdom verwenden, um einen Parser durchzuführen und ein DOM in Node.js zu erstellen. Weitere Optionen, die Sie wählen können, sind:

  • CsQuery für
  • Sie können XHTML ganz einfach aus HTML konvertieren und XSLT nutzen
  • BeautifulSoup für Python
  • HTMLAgilityPack für

Webseiten in Node mit Cheerio scrapen: Wie geht das?

Webseiten in Node mit Cheerio scrapen: Wie geht das?

In diesem Abschnitt erfahren Sie, wie Sie mit Hilfe von Cheerio eine Webseite scrapen. Bevor Sie sich jedoch für diese Methode entscheiden, müssen Sie die entsprechenden Berechtigungen dafür haben. Andernfalls könnten Sie gegen Datenschutzbestimmungen, Urheberrechte oder die Nutzungsbedingungen verstoßen.

Sie lernen, wie Sie den ISO 3166-1 Alpha-3-Code für alle Länder und verschiedene andere Rechtsgebiete auslesen. Die Länderdaten finden Sie im Bereich „Codes“ auf der ISO 3166-1 Alpha-3-Seite. Also, legen wir los!

Schritt 1: Erstellen Sie ein Arbeitsverzeichnis

Hier müssen Sie ein Verzeichnis für das Projekt erstellen, indem Sie den Befehl „mkdir learn-cheerio“ im Terminal ausführen. Dieser Befehl erstellt ein Verzeichnis namens „learn-cheerio“, das Sie aber auch beliebig benennen können.

In diesem Schritt erstellen Sie ein Verzeichnis für Ihre Aufgabe, indem Sie einen Befehl im Terminal ausführen. Der Befehl erstellt ein Verzeichnis namens „learn-cheerio“. Sie können ihm einen anderen Namen geben, wenn Sie möchten.

Nach der erfolgreichen Ausführung der ausgewählten Elemente oder des Befehls „mkdir learn-cheerio“ wird ein Ordner mit dem Namen „learn-cheerio“ angezeigt. Nachdem das Verzeichnis erstellt wurde und Sie externe Ressourcen erfolgreich laden konnten, müssen Sie das Verzeichnis und einen Texteditor öffnen, um das Projekt zu initialisieren.

Schritt 2: Initialisierung des Projekts

Um sicherzustellen, dass Cheerio in diesem Projekt ordnungsgemäß implementiert wird, müssen Sie in das Projektverzeichnis navigieren und es dann initialisieren. Öffnen Sie dazu einfach das Verzeichnis mit einem Texteditor Ihrer Wahl und initialisieren Sie es, indem Sie den Befehl „npm init -y“ ausführen. Sobald Sie diesen Vorgang abgeschlossen haben, können Sie eine „package.json“-Datei im Stammverzeichnis des Projekts erstellen.

Schritt 3 – Installieren der Abhängigkeiten

In diesem Abschnitt installieren Sie die Projektabhängigkeiten, indem Sie den Befehl „npm install Axios cheerio pretty“ ausführen.

Wenn du diesen Befehl verwendest, dauert das Laden eine Weile, also hab bitte etwas Geduld. Sobald du den Befehl erfolgreich ausgeführt hast, kannst du drei Abhängigkeiten in der Datei „package.json“ direkt unter dem Abschnitt „dependencies“ registrieren.

Die erste Abhängigkeit heißt „Axios“, die zweite „Cheerio“ und die letzte „Pretty“. Axios ist ein bekannter HTTP-Client, der im Browser und in Node funktioniert. Sie benötigen ihn, da Cheerio als Markup-Parser fungiert.

Um also sicherzustellen, dass Cheerio das Markup parsen und anschließend die benötigten Daten scrapen kann, müssen Sie

Um sicherzustellen, dass Cheerio das Markup parsen und anschließend die benötigten Daten extrahieren kann, müssen Sie Axios verwenden, um das Markup von der Website abzurufen. Sie können auch einen anderen HTTP-Client verwenden, um das Markup abzurufen, wenn Sie möchten. Es muss nicht unbedingt Axios sein.

„Pretty“ hingegen ist ein npm-Paket, das das Markup aufbereitet, damit es auf dem Terminal vollständig lesbar ist.

Schritt 4: Untersuchen Sie die Webseite, die Sie scrapen möchten

Bevor Sie die Daten von der Webseite extrahieren, müssen Sie zunächst die HTML-Datenstruktur der Seite gut verstehen. In diesem Abschnitt

Bevor Sie Daten von einer Webseite scrapen, ist es unerlässlich, die HTML-Struktur der Seite zu verstehen, von der Sie Daten scrapen werden. Gehen Sie auf Wikipedia zum ISO 3166-1 Alpha-3-Code. Unter dem Abschnitt „Aktueller Code“ finden Sie eine Liste der Länder und ihrer Codes.

Nun müssen Sie nur noch die DevTools öffnen, indem Sie die Tastenkombination „STRG + UMSCHALT + I“ drücken. Alternativ können Sie mit der rechten Maustaste klicken und dann die Option „Untersuchen“ wählen. Hier ist ein Bild, das zeigt, wie die „Liste“ in den DevTools angezeigt wird

Schritt 5: Schreiben Sie den Code zum Auslesen der Daten

Nun müssen Sie den Code zum Auslesen der Daten schreiben. Um mit der Arbeit zu beginnen, müssen Sie den Befehl „touch app.js“ ausführen, um die Datei app.js zu erstellen. Wenn Sie diesen Befehl erfolgreich ausführen, können Sie die Datei app.js ohne Fehler im Projektverzeichnis erstellen.

Genau wie bei allen anderen Node-Paketen musst du „pretty“, „Cheerio“ und „anxious“ einbinden, bevor du sie nutzen kannst. Dazu musst du den folgenden Code hinzufügen:

const axios = require ["axios"]

const Cheerio = require ["cheerio"]

const pretty = require ["pretty"]

Achte darauf, diese Codes ganz oben in der Datei „app.js“ einzufügen. Vergewissere dich, dass du dich gut mit Cheerio auskennst, bevor du die Daten ausliest. Du kannst das Markup analysieren, indem du die resultierende Datenstruktur bearbeitest. Auf diese Weise lernst du die Cheerio-Syntax und den üblichen Ablauf kennen. Hier ist das Markup des UL-Elements, das die LI-Elemente enthält:

const URL-Markup = `

<ul class="fruits">

<li class="frutis__mango"> Mango </li>

<li class="fruits__apple"> Apfel </li>

</ul>

Sie können diesen speziellen Befehl ganz einfach zur Datei app.js hinzufügen.

Wie kann WebScrapingAPI helfen?

Wie kann WebScrapingAPI helfen?

Bildquelle: 

Mittlerweile wissen Sie bereits, wie man Cheerio verwendet, warum Cheerio.load nicht funktioniert, was das div-Element ist, was Textinhalt und Node bedeuten und wie man HTML lädt. Auch wenn Cheerio ein hervorragendes Tool zum Web-Scraping ist, gibt es noch andere. Doch das Tool, das sich von den anderen abhebt, ist die WebScrapingAPI-Software.

Diese Scraping-Software wird von über 10.000 Unternehmen genutzt, um Daten zu bereinigen, zu scrapen und alle nützlichen Informationen zu sammeln. Mit dieser Software können Sie ganz einfach Roh-HTML von jeder Art von Webseite abrufen, und sie nutzt eine einfache API. Sie kann allen Mitarbeitern in Ihrem Unternehmen verarbeitungsfertige Daten bereitstellen.

Die Software kümmert sich automatisch um das JavaScript und die visuelle Darstellung des Proxys mithilfe von CAPTCHAs und echten Browsern. Die Software wird sicherlich zum Wachstum Ihres Unternehmens beitragen, und ihr Kundensupport-Team steht Ihnen rund um die Uhr zur Verfügung, um Ihnen die benötigte Hilfe zu leisten. Im Vergleich zu anderer Scraping-API-Software sammelt diese spezielle Software Daten dreimal schneller.

Mit der WebScraping-API können Sie außerdem Webseiten innerhalb von Vue, AngularJS, React und verschiedenen anderen JS-Bibliotheken scrapen. Sie werden auch auf die Amazon Scraper API, die Google Search and Results API,

Vorteile: 

  • Sie bietet einen hervorragenden Kundensupport
  • Einfach zu bedienende Software
  • Verfügt über eine Bot-Erkennung
  • Rotierende Proxys

Nachteile: 

Ich habe bei der Nutzung der Software keine Nachteile festgestellt

Entscheiden Sie sich für WebScrapingAPI: Die beste Web-Scraping-Software

Entscheiden Sie sich für WebScrapingAPI: Die beste Web-Scraping-Software

Bildquelle: 

Web-Crawling und -Scraping sind in der heutigen Welt ziemlich wichtig. Die Arbeit wird von Experten durchgeführt, die sich gut mit dem fehlerfreien Scraping von Websites auskennen. Das Scraping kann Ihnen helfen, die benötigten Daten zu extrahieren. Mit einer Software wie WebScrapingAPI lässt sich die Extraktion jedoch erheblich beschleunigen.

Die Software hat sich als führende Lösung für das Scraping von Websites etabliert. Unternehmen, die diese Scraping-Software nutzen, erzielen monatlich über 50 Millionen. Die Software nutzt zudem modernste Technologie, wodurch sie sich von anderen Tools abhebt.

Über die Plattform können Sie Preisvergleiche durchführen, Leads generieren, Finanzdaten erheben, Marktforschung betreiben und vieles mehr. Sind Sie also an diesem Website-Scraping-Tool zur Datenerfassung interessiert? Dann wenden Sie sich jetzt an die Experten von WebScrapingAPI! Durch die Nutzung ihrer Software werden blockierte Anfragen verhindert, und Sie erhalten einen hervorragenden Service.

Schauen Sie sich auch unbedingt die Preisoptionen an. Es gibt verschiedene Tarife, die ab 49 $ beginnen. Informieren Sie sich unbedingt ein wenig und prüfen Sie den Preis, bevor Sie mit der Nutzung der Software beginnen. 

Nutzen Sie WebScrapingAPI noch heute!

Über den Autor
Gabriel Cioci, Full-Stack-Entwickler @ WebScrapingAPI
Gabriel CiociFull-Stack-Entwickler

Gabriel Cioci ist Full-Stack-Entwickler bei WebScrapingAPI und verantwortlich für die Entwicklung und Wartung der Websites, des Benutzerportals sowie der wichtigsten benutzerseitigen Komponenten der Plattform.

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.