-
HTML-auslesen
Hallo,
ich habe nicht viel Erfahrung mit Programmieren, deshalb wäre ich sehr dankbar wenn mir jemand einen Tip geben könnte wie ich mit C++ aus dem Internet den HTML-Code auslese.
Ich will bestimmte Informationen automatisch filtern.
Also ich möchte nicht jetzt den Code vorgefertigt bekommen, lediglich einen Hinweis auf die Bibliotheken oder anderen Quellen die mir weiterhelfen könnten.
Vielen Dank im voraus.
-
Du im Grunde erstmal eine Bibliothek, die HTTP implementiert, z.B: libcurl (auf sourceforge.net oder freshmeat.net findet man da noch viele weitere)
Je nachdem was du mit dem transportierten Inhalt machen willst, kann es sinnvoll sein, eine Bibliothek für einen HTML Parser zu verwenden.
Unter gewissen Umständen könnte es notwendig sein, eine volle Webengine zu benutzen, z.B. WebKit
Ciao,
_
-
Danke anda,
mit den Infos kann ich schon viel Anfangen.
Um aber präziser zu werden möchte ich für den Anfang den Inhalt einer kompletten Internetadresse - also den HTML-Code - in eine Textdatei schreiben.
Ich les mir aber erst einmal libcurl duch.
Für alle nachfolgenden: hab hier mal eine erste gute anleitung gefunden.
http://www.c-plusplus.de/forum/viewt...is-169861.html
-
Hallo
Also ich habe hier gute Erfahrungen mit Tidy und anschliessend XSLT gemacht. Also erst validen Code mit Tidy erzeugen und anschliessnd XSLT drüber laufen lassen und schwupps hatte ich alle Ergebnisse die ich brauchte in INSERT-Statements für eine DB.
Das ist im Grunde wohl die einfachste und flexiblste Art HTML-Code auszulesen.
Lg, Christian
-
Ehrlich gesagt für sowas würde ich nie C++ verwenden. Ich hab mir schon viele Skripts geschrieben die gewissen Informationen aus Webseiten holen und habe dafür Python verwendet. Bei Python ist schon eine HTTP Implementierung, ein HTML nach DOM parser und eine DOM Implementierung die XPath kann per default dabei. Das ist dann extrem komfortabel und ich kann in der graphischen Python shell "idle" Schritt für Schritt die einzelnen Teile ausprobieren und live nachschaun, welcher xpath Ausdruck das beste Ergebnis liefert etc. ;)
Bei so einer Anwendung ist i.d.R. sowieso die Netzwerkverbindung das bottleneck und somit ists wurscht wenn man eine dynamische Skriptsprache wie Python verwendet.
-
-
Warum auch immer, es ist nicht die beste Moeglichkeit. Versuchs mit regulaeren Ausdruecken.
Oder mit strcmp. ;)
Lg, Christian