Was Programmiersprachen angeht, gibt es kaum etwas Old-School-mäßigeres als C und C++. Die Sprache erschien 1985 als die perfektionierte Version von „C mit Klassen“.
Zwar wird C++ für die allgemeine Programmierung verwendet, doch ist es nicht unbedingt die erste Sprache, die einem für einen Web-Scraper in den Sinn käme. Es hat einige Nachteile, aber das Konzept ist nicht ohne Vorzüge. Schauen wir uns diese doch einmal an, sollen wir?
C++ ist objektorientiert, was bedeutet, dass es Klassen, Datenabstraktion und Vererbung nutzt, um Ihren Code leichter wiederverwendbar und für unterschiedliche Anforderungen anpassbar zu machen. Da Daten als Objekte behandelt werden, ist es für Sie einfacher, sie zu speichern und zu analysieren.
Viele Entwickler kennen sich zumindest ein wenig mit C++ aus. Selbst wenn Sie es nicht an der Uni gelernt haben, kennen Sie (oder ein Teamkollege) wahrscheinlich ein wenig C++. Das gilt für die gesamte Softwareentwickler-Community, sodass es Ihnen nicht schwerfallen wird, eine zweite Meinung zum Code einzuholen.
C++ ist hochgradig skalierbar. Wenn Sie mit einem kleinen Projekt beginnen und feststellen, dass Web-Scraping das Richtige für Sie ist, ist der Großteil des Codes wiederverwendbar. Ein paar kleine Anpassungen hier und da, und Sie sind bereit für viel größere Datenmengen.
Andererseits ist C++ eine statische Programmiersprache. Das sorgt zwar für eine bessere Datenintegrität, ist aber im Umgang mit dem Internet nicht so hilfreich wie dynamische Sprachen.
Außerdem eignet sich C++ nicht besonders gut für die Entwicklung von Crawlern. Das ist vielleicht kein Problem, wenn du nur einen Scraper willst. Wenn du aber einen Crawler hinzufügen willst, um URL-Listen zu generieren, ist C++ keine gute Wahl.
Ok, wir haben viele wichtige Dinge besprochen, aber kommen wir nun zum Kern des Artikels – dem Programmieren eines Web-Scrapers in C++.