1. 程式人生 > >C++ 基於libcurl的html 檔案下載

C++ 基於libcurl的html 檔案下載

lincurl的環境配置,在這裡不做詳細描述,程式碼實現程式如下:

#include <stdio.h>
#include <curl/curl.h>
/************************************************************************/
/*   created by: mengxiapoxin  date: 2014/12/9                          */
/************************************************************************/

int main(void)
{
	CURL *curl;
	CURLcode res;
	/*   呼叫curl_global_init()初始化libcurl  */
	res = curl_global_init(CURL_GLOBAL_ALL);
	if (CURLE_OK != res)
	{
		printf("init libcurl failed.");
		curl_global_cleanup();
		return -1;
	}

	/* 呼叫curl_easy_init()函式得到 easy interface型指標 */
	curl = curl_easy_init();
	if(curl) {
		/* 呼叫curl_easy_setopt()設定傳輸選項 */
		curl_easy_setopt(curl, CURLOPT_URL, "http://blog.csdn.net/mxxlevel");
		/* 呼叫curl_easy_perform()函式完成傳輸任務 */
		res = curl_easy_perform(curl);

		if(CURLE_OK == res) {
			char *ct;
			/* ask for the content-type */
			res = curl_easy_getinfo(curl, CURLINFO_CONTENT_TYPE, &ct);
			   
			if((CURLE_OK == res) && ct)
				printf("We received Content-Type: %s\n", ct);
			    
		}

		/* always cleanup */
		curl_easy_cleanup(curl);
	}
	return 0;
}
涉及到較多的引數型別回撥,詳細介紹點選這裡http://curl.haxx.se/libcurl/c/curl_easy_setopt.html