C语言编写的简单爬虫代码
以下是一个简单的C语言编写的网页爬虫示例,使用了libcurl
库来处理HTTP请求。请确保在编译前安装了libcurl
库。
#include <stdio.h>
#include <curl/curl.h>
// 回调函数用于保存下载的数据
static size_t WriteCallback(void *contents, size_t size, size_t nmemb, void *userp) {
size_t realsize = size * nmemb;
// 这里可以根据需要处理数据,例如保存到文件或者输出到控制台
printf("%s", contents);
return realsize;
}
int main(void) {
CURL *curl;
CURLcode res;
curl_global_init(CURL_GLOBAL_DEFAULT);
curl = curl_easy_init();
if(curl) {
// 设置目标URL
curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");
// 设置数据写回调函数
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, WriteCallback);
// 执行HTTP GET请求
res = curl_easy_perform(curl);
if(res != CURLE_OK) {
fprintf(stderr, "curl_easy_perform() 失败: %s\n", curl_easy_strerror(res));
}
// 清理cURL资源
curl_easy_cleanup(curl);
}
curl_global_cleanup();
return 0;
}
这段代码使用了libcurl
库来下载指定URL的内容,并通过WriteCallback
函数输出了页面内容。这只是一个简单的示例,实际的爬虫可能需要处理更复杂的情况,例如多线程下载、页面解析、处理JavaScript渲染的内容等。
评论已关闭