Fußball Scalping: goal times als Indikator
Beim Webscraping gibt es unzählige Tools, Methoden und Lösungen. In diesem Artikel möchte ich dir einen Überblick über die verschiedenen Optionen geben, die du in Betracht ziehen und ausprobieren solltest, wenn du versuchst, Daten, Dateien oder andere Informationen online zu extrahieren. Meine eigenen Erfahrungen mit Webscraping habe ich eigentlich nur mit Excel VBA gesammelt und um den Prozess zu optimieren und keine zeitsparenden Tricks oder nützlichen Optionen zu verpassen, habe ich jedoch versucht, mein Toolkit kontinuierlich zu erweitern. Derzeit arbeite ich mich in den “Anfängermodus” von Python ein.
Ratschläge von einen Anfänger
Zunächst solltest du sicherstellen, dass a) die Daten nicht bereits online in einem herunterladbaren Format verfügbar sind. Dies kannst du durch Suchmaschinensuchen (inklusive fortgeschrittener Tricks), öffentliche Datenbanken oder Download- und Exportschaltflächen auf Webseiten überprüfen. Und b) dass du die Daten nicht einfach kopieren und einfügen kannst, ohne dass dabei ein unordentlicher und unbrauchbarer Datensatz entsteht, was leider oft der Fall ist. Bei bestimmten Daten oder Medien (wie Bildern, Videos, Links oder eingebetteten Inhalten) kannst du den Webinspektor verwenden, um die Quelle der Datei zu finden und sie direkt herunterzuladen. Bevor du anspruchsvollere Scraping-Tools wie APIs, codierte Scraper oder erweiterte No-Code-Scraping- und Crawling-Apps in Betracht ziehst, solltest du immer überlegen, ob einige der einfacheren und schnelleren No-Code- oder Low-Code-Optionen die Arbeit erledigen können.
1.) Es gibt einfache, kostenlose Erweiterungen, die dir beim Extrahieren von Tabellen oder Tabellendaten helfen können, wie Table Capture für Chrome oder Firefox. Außerdem gibt es Tools wie DownThemAll für Firefox, die dir beim Herunterladen von Dateien, Listen und ähnlichem nützlich sein können.
2.) Du kannst auch die Importfunktionen von Google Sheets nutzen, um Daten aus HTML-Tabellen und -Listen (mit ImportHTML), XML/XPath-Elementen (mit ImportXML), Download-Links im CSV-/TSV-Format (mit ImportData) oder RSS-Feeds (mit ImportFeed) zu importieren.
3.) Es gibt großartige kostenlose automatische oder erweiterungsbasierte Scraper wie Crawly und Data Miner. Auch die kostenlosen Pläne oder Versionen von WebScraper, Octoparse, Simplescraper, Bardeen und ParseHub sind sehr nützlich. Mit diesen Tools kannst du die gewünschten Daten schnell abrufen, sogar von dynamischen und/oder mehreren Webseiten, und sie in ein maschinenlesbares Format bringen.
An diesem Punkt musst du entscheiden, welche Tools du verwenden möchtest, falls die vorherigen Optionen nicht funktioniert haben. Dies kann ein einzelnes Tool oder eine Kombination mehrerer Tools sein. Die Entscheidung hängt von verschiedenen Faktoren ab, wie zum Beispiel: Zugriff auf erweiterte kostenpflichtige Scraping-Tools: Wenn du Zugang zu fortgeschrittenen Tools wie Octoparse, ParseHub, Import.io, Bright Datas Web Scraper IDE, ScrapingBee oder Dexi hast, können diese dir bei komplexeren Anforderungen weiterhelfen.
Weiterverarbeitung der Daten: Überlege, was du als Nächstes mit den gesammelten Daten tun möchtest. Dies kann die Bereinigung, Datenanalyse, Datenvisualisierung, räumliche Analyse oder Textanalyse umfassen. Deine nächsten Schritte beeinflussen das benötigte Daten- oder Dateiformat und die Wahl des anschließenden Tools, wie beispielsweise Excel, Tableau, Datawrapper, Rawgraphs, Python, R oder Flourish.
Eigene Fähigkeiten und Vorlieben:
Berücksichtige deine eigenen Kenntnisse und Vorlieben bei der Auswahl der Tools. Wähle die Tools, mit denen du dich am wohlsten fühlst und die deine Arbeit am effizientesten unterstützen.
Auf diese Weise kannst du den für deine Bedürfnisse optimalen Ansatz und die passenden Werkzeuge auswählen.
Hier werde ich nur kostenlose Optionen in Betracht ziehen, sei es Open Source, nicht kommerziell oder die kostenlosen Pläne und Testversionen guter Apps und Dienste wie Octoparse. Dabei ist es sinnvoll, zuerst zu prüfen, ob APIs a) existieren und zugänglich sind. Manche Websites haben eine Paywall für APIs, und meiner Meinung nach sollte niemand dafür bezahlen, wenn es andere Webscraping-Optionen gibt, die oft mehr Flexibilität bieten und kostenlos sind. Und b) ob sie dir tatsächlich ermöglichen, die gewünschten Daten zu bekommen. Viele Websites oder Unternehmen beschränken, welche Daten du über ihre APIs abrufen oder einsehen kannst. Durch den Einsatz kostenloser Tools und den gezielten Einsatz von APIs, die offen und zugänglich sind, kannst du effizient und ohne zusätzliche Kosten an die benötigten Daten gelangen.
Gute fortgeschrittene Scraping-Dienste und Apps, die entweder kostenlos oder Open Source sind oder einige kostenlose Funktionen und Pläne bieten (natürlich mit Einschränkungen, das ist Kapitalismus, erinnern Sie sich?), umfassen:
Aber in gewissem Sinne sind die ultimativen kostenlosen Webscraping-Tools die Programmiersprachen selbst. Sie bieten dir die volle Möglichkeit und Autonomie, den Webscraping-Prozess von Anfang bis Ende zu steuern, auszuprobieren, zu testen und abzuschließen. Oft sind sie sogar bei fortgeschrittenen Scrapern sehr schnell. Python, R, JavaScript und Ruby sind allesamt ausgezeichnete Optionen!
Wie immer beginnt alles mit dem Web-/Elementinspektor. Hier kannst du die HTML-Struktur, Elemente und Tags des Quellcodes untersuchen und die spezifischen Informationen finden, die du extrahieren möchtest. Diese Informationen sind unerlässlich, um die gewünschten Daten abzurufen und zu analysieren. Besonders nützlich ist die Registerkarte “Netzwerk”, die du für folgende Zwecke verwenden solltest:
Die eigentliche Programmierung beginnt normalerweise mit dem Abrufen oder Laden des Inhalts (Quellcode) einer Webseite, also dem Anfordern einer bestimmten URL vom Server. In Python kannst du hierfür die Bibliothek requests verwenden, während du in Ruby auf Mechanize, net-http, HTTParty oder OpenURI zurückgreifen kannst. Anschließend erfolgt die Analyse – also das Extrahieren bestimmter Datenfelder – mit BeautifulSoup in Python, Nokogiri in Ruby oder rvest in R.
Extrahiere diese Elemente und Datenfelder, formatiere sie gegebenenfalls neu und speichere die Ausgabe oder verwende sie sofort für die Analyse oder Datenvisualisierung. Es versteht sich von selbst, dass es über diese grundlegende allgemeine Checkliste hinaus viele Methoden, Überlegungen und Techniken gibt, die in die Codierung von Scrapern einfließen.
Manchmal kannst du in Python einfach for-Schleifen verwenden oder auf vorgefertigte Bibliotheken zurückgreifen, die spezifische Seiten für dich scrapen. Für Fußballanalysen gibt es beispielsweise Jason Zivkovics worldfootballR in R und Ben Griffis’ Griffis-Soccer-Analysis in Python. Du kannst auch Selenium für automatisierte Tests, dynamische Webseiten oder die Umgehung von Anmeldungen verwenden. Selenium funktioniert mit den meisten gängigen Browsern und Programmiersprachen wie Python, R und Ruby.
Insgesamt bietet das Webscraping eine Vielzahl von Werkzeugen und Techniken, die du je nach Bedarf kombinieren und anpassen kannst. Egal ob du einfache oder komplexe Aufgaben hast, es gibt immer eine Lösung, die dir hilft, die benötigten Daten effizient und effektiv zu extrahieren.(Foren sind unterstützend)