undefined
Blog > Big Data > Post

3 Methoden zum Scrapen der Daten aus einer Tabelle

Friday, October 28, 2022

Auf Websites werden viele Daten in einem Tabellenformat dargestellt. Es könnten jedoch zu einer schwierigen Aufgabe kommen, die Tabelledaten auf einem lokalen Computer zu speichern. Das Problem ist, dass die Daten in HTML eingebettet sind und nicht in einem strukturierten Format wie CSV heruntergeladen werden können. In diesem Fall ist Web Scraping der einfachste Weg, um die Daten zu erhalten.

Hier möchte ich Ihnen 3 Methoden vorstellen, damit Sie die Daten aus einer Tabelle einfach und schnell scrapen können.

 

 

✽ Octoparse

Octoparse ist ein leistungsfähiges Web-Scraping-Tool, mit dem Sie in kurzer Zeit Daten in großem Umfang extrahieren können. Octoparse ist einfach zu bedienen. Durch Ziehen und Ablegen können Sie ganz einfach einen Arbeitsablauf erstellen, der die benötigten Informationen von jeder beliebigen Website abruft.

 

octoparse

 

Die Schritte zum Daten Scraping mit Octoparse sehen Sie darunter nach.

Schritt 1: Klicken Sie auf "Advanced Mode", um ein neues Projekt zu starten.

Schritt 2: Geben Sie die Ziel-URL in das Feld ein und klicken Sie auf "Save URL", um die Website im integrierten Octoparse-Browser zu öffnen.

Schritt 3: Erstellen Sie das Umblättern mit 3 Klicks:

a) Klicken Sie auf "B" im Browser

b) Klicken Sie in "Action Tips" auf "Select all”".

c) Klicken Sie auf "Loop click each URL" in "Action Tips".

Jetzt können wir sehen, dass ein "Pagination Loop" in der Workflow-Box erstellt wurde.

Schritt 4: Konfigurieren Sie die Aufgabe

a) Klicken Sie auf die erste Zelle in der ersten Zeile der Tabelle

b) Klicken Sie auf das Erweiterungssymbol in "Action Tips", bis die gesamte Zeile grün hervorgehoben ist (normalerweise sollte das Tag TR sein).

c) Klicken Sie auf "Select all sub-elements" in "Action Tips", dann auf "Extract data" und "Extract data in the loop".

Die Schleife für das Scraping der Tabelle ist in den Workflow integriert.

Schritt 5: Extrahieren und expotieren Sie die Daten

Mit den oben genannten 5 Schritten erhalten wir das folgende Ergebnis.

 

 

✽ Google Sheets

In Google Sheets gibt es eine Funktion namens Import Html, mit der Daten aus einer Tabelle innerhalb einer HTML-Seite mit einem festen Ausdruck =ImportHtml (URL, "table", num) extrahiert werden können.

Schritt 1: Öffnen Sie ein neues Google Tabelle, und geben Sie den Ausdruck in ein leeres Feld ein. Es wird eine kurze Einführung in die Formel angezeigt.

Schritt 2: Geben Sie die URL ein (Beispiel: https://en.wikipedia.org/wiki/Forbes%27_list_of_the_world%27s_highest-paid_athletes) und passen Sie das Indexfeld nach Bedarf an.

Mit den oben genannten 2 Schritten können wir die Daten aus einer Tabelle innerhalb von Minuten mit Google Tabelle scrapen. Allerdings gibt es eine offensichtliche Einschränkung. Wir müssen den Prozess mehrmals wiederholen, wenn wir planen, Tabellen von mehrere Seiten mit Google Tabelle zu scrapen. Daher brauchen Sie eine effizientere Methode, um den Prozess zu automatisieren.

 

 

✽ Sprache R (mit rvest-Paket)

In diesem Fall verwende ich auch diese Website (https://de.investing.com/currencies/single-currency-crosses) als Beispiel, um zu zeigen, wie man Tabellen mit rvest scrapen kann.

Bevor wir mit dem Schreiben des Codes beginnen, müssen wir einige grundlegende Grammatiken über das rvest-Paket kennen.

html_nodes() : Auswahl eines bestimmten Teils in einem bestimmten Dokument. Wir können CSS-Selektoren verwenden, wie html_nodes(doc, "table td"), oder xpath-Selektoren, html_nodes(doc, xpath = "//table//td")

html_tag() : Extrahiert den Tag-Namen. Einige ähnliche sind html_text (), html_attr() und html_attrs()

html_table() : Parsen HTML-Tabellen und extrahieren die in R Framework.

Darüber hinaus gibt es noch einige Funktionen zur Simulation des menschlichen Surfverhaltens. Zum Beispiel html_session(), jump_to(), follow_link(), back(), forward(), submit_form() und so weiter.

In diesem Fall müssen wir html_table() verwenden, um unser Ziel zu erreichen, also Daten aus einer Tabelle auszulesen.

Laden Sie zunächst R(https://cran.r-project.org/) herunter.

Schritt 1: Installieren Sie rvest.

 

rvest

 

Schritt 2: Beginnen Sie mit dem Schreiben von Codes, wie in der folgenden Abbildung gezeigt.

Library(rvest) : Importieren Sie das rvest-Paket

Library(magrittr) : Importieren Sie das Paket magrittr

URL: Die Ziel-URL

Read HTML : Zugriff auf die Informationen der Ziel-URL

List: Lesen die Daten aus der Tabelle

Schritt 3: Nachdem Sie den gesamten Code in das R-Penal geschrieben haben, klicken Sie auf "Enter", um das Skript auszuführen. Jetzt können wir die Tabelleninformationen sofort erhalten.

Für die Menschen, die keine Programmierkenntnisse haben, ist die Programmierung mit einer steilen Lernkurve verbunden, die die Schwelle für den Einstieg in das Web Scraping erhöht. Es erschwert diese Menschen, einen Wettbewerbsvorteil bei der Nutzung von Webdaten zu erlangen.

 

Ich hoffe, dass das obige Tutorial Ihnen hilft, eine allgemeine Vorstellung davon zu bekommen, wie ein Web Scraping Tool Ihnen helfen kann, das gleiche Ergebnis wie ein Programmierer mühelos zu erreichen.

 

Wenn Sie Probleme bei der Datenextraktion haben, oder uns etwas Vorschlägen geben möchten, kontaktieren Sie bitte uns per E-Mail (support@octoparse.com).

 

 

 

Autor*in: Das Octoparse Team

Diese Website verwendet Cookies um Ihnen ein besseres Internet-Erlebnis zu ermöglichen. Lesen Sie wie wir Cookies verwenden und Sie können sie kontrollieren, indem Sie auf Cookie-Einstellungen klicken. Wenn Sie die Website weiter nutzen, akzeptieren Sie unsere Verwendung von Cookies.
Akzeptieren Ablehnen