R - Web-Daten
R-Pakete installieren
Bevor wir in die Welt der Web-Daten mit R eintauchen, stellen wir sicher, dass Sie alle notwendigen Werkzeuge haben. Der erste Schritt besteht darin, die erforderlichen Pakete zu installieren. In diesem Tutorial werden wir das rvest
-Paket verwenden, das eine beliebte Wahl für Web-Scraping in R ist. Um es zu installieren, öffnen Sie Ihre R-Umgebung und führen Sie den folgenden Befehl aus:
install.packages("rvest")
Sobald die Installation abgeschlossen ist, können Sie das Paket in Ihre aktuelle Sitzung laden, indem Sie den folgenden Befehl ausführen:
library(rvest)
Eingabedaten
Nun, da wir unsere Werkzeuge bereit haben, lassen Sie uns darüber sprechen, welche Art von Daten wir bearbeiten werden. Web-Daten beziehen sich auf Informationen, die im Internet verfügbar sind, wie Texte, Bilder, Links und mehr. In diesem Tutorial werden wir uns auf das Extrahieren von Textdaten aus Websites konzentrieren.
Um dies zu tun, müssen wir die URL der Website kennen, die wir scrappen möchten. Nehmen wir zum Beispiel an, wir möchten die Titel von Artikeln von einer Nachrichtenwebsite extrahieren. Wir würden mit der Identifizierung der URL der Hauptseite der Website oder des spezifischen Abschnitts beginnen, in dem die Artikel aufgelistet sind.
Beispiel
Lassen Sie uns ein Beispiel erstellen, bei dem wir die Titel von Artikeln von einer hypothetischen Nachrichtenwebsite scrapen. Wir verwenden die read_html()
-Funktion aus dem rvest
-Paket, um den HTML-Inhalt der Website herunterzuladen, und verwenden dann CSS-Selektoren, um die gewünschten Informationen zu extrahieren.
Zunächst definieren wir die URL der Website:
url <- "https://www.examplenews.com/articles"
Als nächstes lesen wir den HTML-Inhalt der Website:
webpage <- read_html(url)
Nun, da wir den HTML-Inhalt haben, können wir CSS-Selektoren verwenden, um die Elemente zu mål, die die Artikelüberschriften enthalten. Angenommen, jeder Artikelstitel ist in einem <h2>
-Tag mit der Klasse article-title
eingeschlossen. Wir können diese Titel mit der html_nodes()
-Funktion extrahieren:
titles <- webpage %>%
html_nodes("h2.article-title") %>%
html_text()
Die html_nodes()
-Funktion nimmt zwei Argumente: den CSS-Selektor und den HTML-Inhalt. In diesem Fall suchen wir nach <h2>
-Tags mit der Klasse article-title
. Die html_text()
-Funktion extrahiert den Textinhalt dieser Knoten.
Dateidownload überprüfen
Um sicherzustellen, dass unser Code korrekt funktioniert, drucken wir die extrahierten Titel in die Konsole:
print(titles)
Wenn alles korrekt eingerichtet ist, sollten Sie eine Liste von Artikelüberschriften in der Konsole sehen. Dies ist nur ein einfaches Beispiel, aber Sie können es erweitern, indem Sie mehr über CSS-Selektoren und andere Funktionen erfahren, die das rvest
-Paket zur Extraktion verschiedener Arten von Daten aus Websites bietet.
Denken Sie daran, dass Web-Scraping immer verantwortungsbewusst und ethisch durchgeführt werden sollte. Überprüfen Sie immer die Nutzungsbedingungen der Website und die robots.txt-Datei, um sicherzustellen, dass Sie berechtigt sind, deren Inhalt zu scrapen. Zögern Sie nicht, sich an die Website-Administratoren zu wenden, wenn Sie unsicher sind, ob Scraping erlaubt ist.
Zusammenfassend lässt sich sagen, dass Web-Scraping mit R ein leistungsstarkes Werkzeug zur Extraktion wertvoller Informationen aus dem Internet sein kann. Durch die Schritte, die in diesem Tutorial beschrieben werden, sollten Sie nun eine solide Grundlage haben, um mit der Extraktion von Web-Daten in R zu beginnen. Viel Spaß beim Scrapen!
Credits: Image by storyset