Web-Crawling mit Python
Web Crawling ist zwar schon so alt wie das World Wide Web, jedoch gewinnt es dank des Aufstiegs von Machine Learning in Verbindung mit dem Natural Language Processing wieder an größerer Bedeutung.
Das hat unter anderem folgende Gründe:
* Web Crawling ist in der Lage, eine große Menge an Daten für Machine Learning zu sammeln.
* Größere Unternehmen nutzen Crawling zunehmend dafür, die (Text-)Bewertungen für ihre Produkte aus verschiedenen Internet-Plattformen zu extrahieren und einen Einblick zu bekommen, aus welchen Gründen diese den Kunden gefallen oder missfallen (dies ist ebenfalls auf die Produkte der Konkurrenz anwendbar).
* Die aus dem Web gewonnenen Daten können neue Einblicke in das Marktgeschehen, die entstehenden Trends und neue Produkte geben.
* Ebenfalls können Firmen damit betrügerische Handlungen - wie beispielsweise den Missbrauch der eigenen Marke - aufspüren.
Außerdem kann ein Unternehmen damit automatisiert seine Website hinsichtlich Verfügbarkeit oder Manipulation (etwa durch einen Hackerangriff) überwachen.
Vorkenntnisse
* Grundkenntnisse in Python
* Grundkenntnisse in HTML
* erste Erfahrung in der objektorientierten Programmierung
* Grundverständnis im Bereich der HTTP Requests
* Idealerweise Grundkenntnisse in Regular Expressions
Lernziele
Die Teilnehmer
* bekommen den Überblick über gängige Python Crawling Frameworks und sind in der Lage das zu ihrer Situation passende Framework auszuwählen
* erfahren über die verschiedenen Vorgehensweisen beim Web Crawling (Listen-basiert, Sitemap-basiert etc.)
* sind in der Lage ein auf Scrapy (Python) basierendes Crawling-Projekt zu erstellen, zu starten und zu überwachen
* lernen HTML-Elemente mithilfe von XPath zu selektieren
* können den Inhalt einer robots.txt einer Webseite verstehen
* lernen die gängigen Fehler kennen und wissen diese zu vermeiden