DaMu-Analytics

How to: Web Scraping Data mit Beautiful Soup

Eine der wichtigen Aufgaben der Data Science ist es erst einmal an Daten zu kommen die man analysieren kann. Häufig werden einem von Auftraggebern bereits bestehende Daten zur Verfügung gestellt. Es kann aber auch vorkommen, dass erst noch Daten erhoben werden müssen. Eine Möglichkeit wie Daten von Webseiten gesammelt werden können möchte ich euch im folgenden erläutern.

In diesem Beitrag werde ich etwas über das Web Scraping schreiben. Dabei handelt es sich um eine Methode mit der Daten aus den HTML Strukturen von Webseiten extrahiert werden. Vorab gibt es hier aber einige Dinge zu beachten.

  1. Wenn möglich nutzt API’s der Anbieter, da diese genau für die Sammlung von Daten vorgesehen sind
  2. Versichert euch, dass die Daten die ihr sammelt auch für eure Zwecke verwendet werden dürfen (ggf. Fragen)
  3.  Überlastet die Webseite des Anbieters nicht mit euren Anfragen. Gerade wenn man eine komplette Webseite durchsucht und z.B. Dateien runterlädt oder die Unterseiten durchsucht, dann können kleinere Webseiten schnell in die Knie gehen. Außerdem könnte bei zu vielen Datenabfragen in zu kurzer Zeit der Admin auf die Idee kommen, dass ihr ein bösartiger Angreifer seid und eure IP blocken.

Mehr erfahren

Python – Pandas, Import, Export, DataFrames und Datenmodellierung

Pandas ist eines der besten Packages in Python um Daten in ein Programm zu laden und auch große Mengen lassen sich mithilfe von Pandas aufbereiten und wieder in z.B. Datenbanken zurückschreiben oder mit weiteren Packages zu visualisieren. In Datenanalyse Projekten kommt man also um Pandas, wenn man mit Python arbeitet, gar nicht vorbei. Deshalb möchte ich mit diesem Beitrag einen Überblick über häufig genutzte Funktionen bieten.

Was ist Pandas jetzt eigentlich? Pandas ist ein Package in Python. Der Fokus liegt auf die Datenaufbereitung und Modellierung von Tabellen. Dabei bietet Pandas umfassende Funktionen um aus verschiedenen Quellen die Daten in dein Analyseprojekt zu laden und auch wieder zu exportieren. Außerdem sind die performanten Modellierungsfunktionen ein großer Pluspunkt, die auch die Arbeit mit großen Datenmengen erlauben. Pandas ist quasi aufgesetzt auf das Package Numpy, welches bereits das Konzept von Arrays einführt. Während in Numpy Arras allerdings nur Daten in einem Array mit dem gleichen Datentyp erlaubt, arbeitet Pandas vor allem mit Dataframes. Diese erlauben auch in einem Dataframe unterschiedliche Datentypen, wie z.B. in der ersten Spalte Integer und in der zweiten Spalte Daten vom Typ String etc. Mehr erfahren