pekfos Temat założony przez niniejszego użytkownika |
przykład do biblioteki sieciowej » 2009-03-23 17:56:15 mógłby ktoś podać jakiś przykład do (dowolnej) biblioteki sieciowej, taki który odczytywałby treść pliku zamieszczonego w internecie? |
|
DejaVu |
» 2009-03-23 18:01:52 Patrzyłeś na bibliotekę Curl'a? |
|
pekfos Temat założony przez niniejszego użytkownika |
» 2009-03-23 18:04:04 nie |
|
pekfos Temat założony przez niniejszego użytkownika |
» 2009-03-24 11:00:53 znalazłem jeden przykład do curl'a tyle że w PHP <?php // Skrypt łączy się z adresem http://pl.wikipedia.org/w/index.php?title=CURL&action=edit $hand = curl_init(); curl_setopt($hand, CURLOPT_URL, 'http://pl.wikipedia.org/w/index.php'); curl_setopt($hand, CURLOPT_POST, 1); curl_setopt($hand, CURLOPT_POSTFIELDS, 'title=CURL&action=edit'); curl_exec($hand); curl_close($hand); ?> //edit: #include <stdio.h> #include <iostream> #include <curl/curl.h> #include <string> using namespace std;
int main() { CURL * curl; CURLcode res; curl = curl_easy_init(); if( curl ) { curl_easy_setopt( curl, CURLOPT_URL, "http://www.wp.pl" ); curl_easy_perform( curl ); curl_easy_cleanup( curl ); } getchar(); return 0; } to już coś. poszukam dalej to może znajdę dokumentację //edit2: http://curl.haxx.se/libcurl/c/libcurl-tutorial.htmljakiś kurs do curl'a ale mało z niego rozmiem :( |
|
DejaVu |
» 2009-03-24 16:11:53 Generalnie biblioteka Curl'a jest 'trudna' do nauki przez to jak dokumentacja jest do tego napisana, ale działa całkiem dobrze :) |
|
pekfos Temat założony przez niniejszego użytkownika |
» 2009-03-24 18:34:08 no tak, dokumentacja łatwa nie jest.. Sądząc po udanym programie watchDDT wiesz jak odczytać plik z internetu za pomocą curl'a. potrzebuje tylko przykładu z kilkoma krótkimi komentarzami który odczytywał by treść jakiegoś pliku.
|
|
DejaVu |
» 2009-03-24 18:40:39 To jest fragment pobierający kod - jest tu trochę śmieci. Jak uda Ci się zrobić, to wklej 'oczyszczony' kod, który realizuje to co chciałeś. int CDatabase::ReadCurlData( void * buffer, size_t size, size_t nmemb, void * stream ) { std::string * tString =( std::string * ) stream; tString->append(( char * ) buffer, size * nmemb ); return( size * nmemb ); }
bool CDatabase::IsUpdated() { if( m_IsLocked == false ) { CURL * curl; CURLcode res; curl = curl_easy_init(); if( curl ) { m_NewData.clear(); curl_easy_setopt( curl, CURLOPT_URL, gTarget.c_str() ); curl_easy_setopt( curl, CURLOPT_WRITEFUNCTION, ReadCurlData ); curl_easy_setopt( curl, CURLOPT_WRITEDATA, & m_NewData ); curl_easy_setopt( curl, CURLOPT_VERBOSE, 0 ); curl_easy_setopt( curl, CURLOPT_TIMEOUT, 5 ); curl_easy_setopt( curl, CURLOPT_NOSIGNAL, 1 ); res = curl_easy_perform( curl ); if( CURLE_OK != res ) m_NewData = m_OldData; curl_easy_cleanup( curl ); if( m_NewData.find( "-Jun-", 0 ) != std::string::npos ) m_NewData = m_NewData.replace( m_NewData.find( "-Jun-", 0 ), 5, "-cze-" ); if( m_NewData.find( "-May-", 0 ) != std::string::npos ) m_NewData = m_NewData.replace( m_NewData.find( "-May-", 0 ), 5, "-maj-" ); } return( m_NewData != m_OldData ); } else return( false ); }
|
|
pekfos Temat założony przez niniejszego użytkownika |
» 2009-03-24 18:49:19 hmm.. nic nie rozumiem z tego kodu, chyba dużo jest w nim tych 'śmieci' |
|
« 1 » 2 3 |