Web Scraping mit CasperJS und PhantomJS


CasperJS, PhantomJS oder NodeJS als Lösung


Beim Web Scraping geht es größten Teils darum, Informationen aus einer bereits existierenden Quelle, in diesem Fall die Webseite, zu extrahieren.

Was mit den Daten gemacht wird bleibt einem selbst überlassen.

Es ist allerdings Vorsicht geboten da das Web Scraping meist von den Seitenbetreibern ungern gesehen oder sogar verboten ist.

Elemente die über Javascript nachgeladen werden sind mit PHP, python und co nicht zu erreichen?

Warum dann nicht einfach Javascript für das Web Scraping benutzen?

Mit CasperJS, PhantomJS oder NodeJS lassen sich Javascripte vom Server aus ausführen und man kann Webseiten laden und verarbeiten.

Zudem bieten sie die Möglichkeit den eigenen Javascript Code im geladenen Seiten Kontext auszuführen und somit auf den gesamten DOM Baum zuzugreifen.

Damit kann man Elemente auslesen oder modifizieren und man könnte z.B. ein Klick Event simulieren.


Die Praxis des Web Scrapings mit CasperJS

CasperJS ist eine Erweiterung von PhantomJS und basiert grundlegend auf einzelnen Schritten.Man deklariert in den Schritten die Funktionen, die am Ende zum gewünschten Ergebnis führen, welche dann im Seiten Kontext ausgeführt werden.Mit CasperJS kann man allerdings nicht nur für das Web Scraping benutzen sondern auch ein Bild von der Webseite auf einfachste weise erstellen.Hier ein kleiner Beispiel Code wie man beim Web Scraping einen Login tätigt.



Mehr zum Thema Web Scraping gibts beim nächsten mal :)

    Share

    Comments