Als durchleuchteter, stets verfolgter Nutzer von Google, Facebook und Co. kann es ein Erweckungserlebnis sein, den Spieß einmal umzudrehen. Einmal selbst fremde Datenbanken auslesen. Endlich einmal selber unerreichbare Informationen abzapfen.
Der NSA-verprellte abenteuerliche Neuland-Entdecker kann mit einfachsten Mitteln die eigene Datendecke aufbessern. Scraping, Crawler und andere Tools helfen. Und zwar besonders dann, wenn einzelne Informationen zwar in Masse vorhanden sind, aber (wie beim öffentlichen Adressbuch) nicht gesammelt und als Datenbank auswertbar zugänglich sind.
Zu Data Mining gehört die Wissensentdeckung. Nützliche und möglicherweise unerwartete Muster sollen freigelegt werden. Häufig muss man dazu vor allem eines: Vorhandene Daten mit neuen, anders strukturierten Daten verknüpfen. Einzelhandelsumsatz muss mit Ortsdaten und regionalen Kaufkraftdaten verbunden werden. Wetterdaten mit Verkehrsdaten. Die fehlenden Kontextinformationen bietet das Netz. Von Google Maps bis zur Amazon Produktdatenbank sind diese Informationen und viele mehr doch eigentlich vorhanden.
Wie komme ich an die fehlenden Datenmengen?
[selectivetweet] Viele wissen nicht, was man mit Scraping noch aus dem Netz herausholen kann.[/selectivetweet]Es gibt Webindexierungsmethoden, die einem diese im Hintergrund der Webseiten gespeicherten Daten auslesen. Webcrawler, Bots und Spraping-Anwendungen helfen dabei. Oft ist dies aber gar nicht nötig. Es bietet sich eine Recherche an:
Zunächst suche bei den Anbietern nach webbasierten APIs – öffentlichen Datenschnittstellen. Was für Webunternehmen längst Standard ist, verstehen auch Behörden immer häufiger. Denn geteilte Informationen können allen helfen.
Nutze für Daten, die in pdf, hmtl und anderen Formaten versteckt sind, spezielle Mining-Tools. Mach Daten maschinenlesbar. Die Formate csv, xml, json, xls sind dafür besonders geeignet.
Sollte sich nichts finden und auch kostenpflichtige Datenanbieter nicht helfen, bleibt oft nur Suche auf eigene Faust in den Codes des Internet mittels Scraping-Tools. Die helfen, Daten aus den sichtbaren und unsichtbaren Teilen des Netz „herauszuschälen“. Und das geht, je nach Suchterrain und mit den richtigen Helfern, sehr leicht.
Was können Scraper?
Diese Chrome-Browser-Erweiterung hilft bei einfacher Textextraktion von vielen Websites auf einmal. Besonders nützlich: die „Scrape similar“-Funktion. Einfach einen Teil einer Website auswählen und die App transferiert alles Ähnliche schnell und einfach in ein auswertbares Format. Scraper ist weniger geeignet für komplexe Website-Strukturen oder Bilder. Wie zu jeder anderen Anwendung gibt es hier hilfreiche Anleitungen.
Diese Anwendung ist für größere Datenmengen kostenpflichtig. Allerdings ist sie ein ideales Tool zum Kennenlernen und Üben, denn viele vorgefertigte Lösungen stehen für erweiterte Möglichkeiten und größere Komplexität bereit. Lade alle pdfs und Bilder einer Serie mit einem Befehl herunter – kein Problem. Verschiedene Online-Tutorials helfen. Ein Beispiel:
OpenRefine (ehemals Google Refine)
Diese freie Anwendung ist eine große Hilfe, unstrukturierte Daten nutzbar zu machen, zu säubern und in andere Formate zu überführen. Sortieren und Sammeln wird dadurch zur einfachen Übung.
Für Firefox ist diese Erweiterung ebenfalls ein einfacher Weg, Rohdaten zu entdecken und zu sammeln, die beim Surfen im Hintergrund mitlaufen.
Kimono Labs
Kimono scrapet Webdaten und schafft als in Hintergrund laufende Anwendung eine ständige API auf der Basis einer von URLs. Die Anwendung ist einfach zu bedienen, hat jedoch bestimmte Leistungsbeschränkungen.
Ganz ähnlich, aber etwas differenzierter als Kimono Labs schafft einem Import.io eine websitebasierte API.
Eine Sammlung von vorgefertigten Einsteigertools und gleichzeitig Online-Platform für kollaborative Problemlösung und komplexere Recherchen. Hier findet man alles, von einem Scraper zum Auslesen von Twitter bis zu ganz speziellen Lösungen. Da hier viele Scraping-Codes von anderen Usern eingestellt werden, ist die Platform ein guter Ort, um in Kontakt zu treten und um zu lernen.
Als Wiki und Kollaborationsplattform für Fortgeschrittene richtet sich BS an Anwender, die schon Programmiersprachen wie Python können. Trotzdem ist man hier noch auf Einsteiger und einfache Anwendungen ausgerichtet. Viele vorprogrammierte Anwendungen machen es attraktiv, ein paar Python-Grundlagen aufzufrischen.
Ähnlich wie BeautifulSoup, bietet Scrapy jedoch mehr Code und mehr Personalisierungsmaßnahmen. Ebenfalls in Python ist dieses robuste Rahmenwerk ein Profi-Tool.
Piggy Bank
Als Firefox-Erweiterung leistet diese Anwendung die Arbeit einer Abrufzentrale. Sie ermöglicht, Daten aus verschiedenen Webseiten abzurufen, zusammenzufügen und lokal zu speichern.
Die offene Code-Platform Github bietet darüber hinaus für viele spezielle Scraping-Herausforderungen schon Lösungen und Codes an, die nur noch übernommen oder angepasst werden müssen. Hier finden sich auch die Experten, die einem bei speziellen Fragen weiterhelfen können.
Übrigens: Scraping ist nicht (unbedingt) mit Diebstahl gleichzusetzen.
Es ist heute häufig gewünscht. So bieten YouTube und Slideshare Einbettcodes, die Teile ihrer Seiten (Videos) direkt in anderen Kontexten verfügbar machen. In anderen Fällen, wie beim massiven Auslesen von Adressen aus Google Maps („Ich brauche eine Liste aller Waffengeschäfte in Deutschland“) werden technische Hürden gesetzt und die Rechtslage wird schnell unklar.
Immer mehr Institutionen und Datenhubs richten von sich aus heute APIs ein. Schnittstellen wie diese schaffen die Geschwindigkeit des Web heute, weil sie den geordneten Austausch von Daten ermöglichen – und diese nicht nur in doc, pdf oder html darstellen. Mitverantwortlich für diese Entwicklung ist die Open-Data-Bewegung, die Informationsfreiheitsgesetze durchgesetzt hat und die Kultur des Teilens mit der Allgemeinheit rundum die Welt propagiert. Offene Systeme wie Android und Apps wie Evernote versuchen zunehmend, Entwickler zur Nutzung von APIs zu bewegen.
[selectivetweet]Offene Systeme wie Android und Apps wie Evernote versuchen, über API-Entwickler anzusprechen.[/selectivetweet]
Die Attraktivität der Systeme soll dadurch erhöht werden. Wenn eine Stadt hingegen ihre erhobenen live-Verkehrsdaten über eine API zugänglich macht, können kommerzielle oder gemeinnützige Anbieter damit arbeiten und Anwendungen für sich und die breite Masse entwickeln. Insbesondere staatlich erhobene und durch Steuern finanzierte Daten sollen der Öffentlichkeit zugänglich gemacht werden. Somit wird in den Archiven schlummernder Nutzen freigesetzt und kann zu mehr Effizienz, Geschwindigkeit und besseren Entscheidungen führen.
Auch Privatpersonen und kleine Betriebe können diese Möglichkeiten nutzen, um anstehende Entscheidungen besser zu treffen und sich zu entwickeln. Die fehlenden Daten liegen oft bereit – und sie zu nutzen, macht einen zum souveränen Wissensarbeiter.