CH: mit C++ eine Homepage einlesen

bin langsam aber sicher am umsteigen von Perl zu C++.
nun suche ich eine Bibliothek für C++ in welcher ich Befehle habe, um Daten aus einer Website einzulesen, analog zum Perl Code

$ua = new LWP::UserAgent;
$req = new HTTP::Request 'GET' => "$URL";
$res = $ua->request($req);
$data= $res->content;

Kann mir da jemand weiterhelfen, oder gibt es sowas nicht?

  1. Sup!

    Nun, keine Ahnung, Google ist Dein Freund;
    Sowas aehnliches in C (bzw. C++) zu realisieren ist aber auch nicht so das Problem.
    TCP-Socket aufmachen, GET /bla.html HTTP/1.0\r\n\r\n senden, Daten empfangen, ist auch nicht sonderlich kompliziert, wenn Du nicht noch mehr LWP-Funktionen brauchst, die eine Klasse dafuer lohnend machen wuerden.

    Gruesse,

    Bio

    --
    Gnade - was bedeutet dieses Wort?
  2. hallo,

    bin langsam aber sicher am umsteigen von Perl zu C++.

    Interessant. Wenn du magst, erzählst du bitte noch kurz, warum du das tust.

    nun suche ich eine Bibliothek für C++ in welcher ich Befehle habe, um Daten aus einer Website einzulesen, analog zum Perl Code

    Das wird schwierig. C/C++ ist zwar eine inzwischen nahezu universell eingesetzte Sprache, aber die Art, wie damit binaries erzeugt werden, ist stark abhängig davon, welchen Compiler du verwendest. Microsoft Visual C++ hat andere Bibliotheken als der gcc, und DJGPP hat wieder andere als der Borland-Compiler usw.

    Aber genauso, wie du dir für PERL eigene Module schreiben kannst, kannst du dir für deinen C-Compiler auch eigene Bibliotheken zusammenstellen.

    Grüße aus Berlin

    Christoph S.

    1. hallo,

      bin langsam aber sicher am umsteigen von Perl zu C++.

      Interessant. Wenn du magst, erzählst du bitte noch kurz, warum du das tust.

      umsteigen kann man gar nicht, man kann nur dazulernen.

      mit freundlichen grüßen
         dimitri rettig

      1. hallo,

        bin langsam aber sicher am umsteigen von Perl zu C++.

        Interessant. Wenn du magst, erzählst du bitte noch kurz, warum du das tust.

        umsteigen kann man gar nicht, man kann nur dazulernen.

        mit freundlichen grüßen
           dimitri rettig

        doch umsteigen kann man, habe einige kleine Tools in Perl programmiert (checken Aktienkurse ab und so), und dies will ich neu in C++ machen. Das Perl-programm braucht meiner Ansicht zuviel Systemressourcen, mehr als C++ (nur schon der localhost braucht ja einiges; lasse mich gerne korrigieren falls ich da falsch liege), und da ich sowieso am C++ lernen, will ich meine kleinen Helferlein neu in C++ programmieren.

  3. bin langsam aber sicher am umsteigen von Perl zu C++.
    nun suche ich eine Bibliothek für C++ in welcher ich Befehle habe, um Daten aus einer Website einzulesen, analog zum Perl Code

    Irgendwie ist das das falsche Forum für sowas. Versuch's eher mal bei http://c-plusplus.de/.

    Anyway, das ganze geht über die WinAPI (wenn du unter Windoof programmierst):

    \\ const int buffsize = 2048;
    char buffer[buffsize];
    int bytesread;

    HINTERNET hConn = InternetOpen(
        (LPCTSTR)"MyAgent",
        INTERNET_OPEN_TYPE_PRECONFIG,
        NULL,
        NULL,
        0
    );

    if(hConn)
    {
        HINTERNET hUrl = InternetOpenUrl(
            hConn,
            (LPCTSTR)"http://die-url/",
            NULL,
            0,
            0x80000000,
            NULL
        );

    if(hUrl)
        {
            while(true)
            {
                InternetReadFile(hUrl, buffer, buffsize, bytesread);
                if(bytesread == 0)
                    break;
                std::out << buffer; // oder watt auch immer
            }

    InternetCloseHandle(hUrl);
        }

    InternetCloseHandle(hConn);
    }
    ///

    !!! ungetestet! Ich selbst programmiere (fast) nie C++.

    Gruß,
    KonRad -

    --
    "Was Gott zusammengeführt hat ..." :: polithink.org -
    the politicultural e-zine :: http://www.polithink.org