Per Client Zugriff auf Inhalte einer Internetseite
-
Hallo,
ich bin Anfänger in Sachen C++ (ich kanns jetzt ein gutes halbes Jahr).
Meine Frage: Wie kann ich über einen (selbstprogrammierten) Client auf Text bzw. Formularelemente einer Internetseite zugreifen?
Gibt es dazu Funktionen oder Libraries (ect.)?MfG
-
Für Sockets allgemein ist boost.asio zu empfehlen, für das http-protokoll ist libcurl bzw. der c++ wrapper libcurlpp zu empfehlen.
-
Ich meinte mehr wie ich das machen kann, also wie ich auf das Eingabefeld soundso mit C++ zugreife.
MfG
-
glan schrieb:
Ich meinte mehr wie ich das machen kann, also wie ich auf das Eingabefeld soundso mit C++ zugreife.
Na, schau Dir halt die Doku zu den jeweiligen Bibliotheken an. Da steht sowas drin.
-
Das hilft mir kaum weiter, da ich überhaupt keine Ahnung hab, nach was ich schauen sollte...

MfG
-
glan schrieb:
Das hilft mir kaum weiter, da ich überhaupt keine Ahnung hab, nach was ich schauen sollte...

In solch einem Fall liest man sich die Einführung durch, um zu sehen, wie man mit den Bibliotheken arbeitet.
-
Ich habe mir die letzten Tage asio was näher angeschaut und bin Halb-Verrückt zu selbstgemacht Sockets wieder zurückgekehrt ...
-
glan schrieb:
Wie kann ich über einen (selbstprogrammierten) Client auf Text bzw. Formularelemente einer Internetseite zugreifen?
Gibt es dazu Funktionen oder Libraries (ect.)?
MfGHallo !
Um einen Client selbst zu programmieren, musst du wohl oder übel in die 'Internals' der Socketprogrammierung und des Http-Protokolls eintauchen.
Literatur und Beispiele:
http://www.galileo-press.de/openbook/c_von_a_bis_z/c_028_004.htm
http://beej.us/guide/bgnet/output/print/bgnet_USLetter.pdf
http://www.wut.de/pdf/e-58www-12-prde-000.pdfViele Quelltext-Beispiele:
http://cs.baylor.edu/~donahoo/practical/CSockets/textcode.htmlIm Prinzip funktioniert eine Http - Kommunikation zwischen Client und Server so:
Du lädst einen Http-Header in einen Puffer in der Form:
"GET / HTTP/1.1\r\nHost: 'www.google.de'\r\nConnection: Close\r\n\r\n"
und schickst ihn über eine Socketverbindung an den Server mit der send - Funktion.Mit der recv - Funktion kannst du dann die Antwort des Servers empfangen,
die ebenfalls in einem Puffer landet.Die obige Anfrage würde dir die Startseite von Google liefern.
MfG
-
Ich bin bislang mit rohen Sockets in Kombination mit Boost.Iostreams recht zufrieden (Applikation: HTTP-Server).