在C語言中獲取當前頁面的HTML代碼可以通過以下步驟實現(xiàn):
// 引入相關(guān)庫 #include#include #include // 定義回調(diào)函數(shù),將獲取到的內(nèi)容寫入緩存區(qū) size_t write_data(void *ptr, size_t size, size_t nmemb, void *stream) { size_t written = fwrite(ptr, size, nmemb, (FILE *)stream); return written; } int main(void) { CURL *curl; CURLcode res; FILE *fp; char *url = "http://www.example.com"; // 該頁面為例,可替換為目標網(wǎng)站 curl = curl_easy_init(); if (curl) { fp = fopen("curloutput.html", "wb"); curl_easy_setopt(curl, CURLOPT_URL, url); // 設(shè)置URL curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_data); // 設(shè)置回調(diào)函數(shù) curl_easy_setopt(curl, CURLOPT_WRITEDATA, fp); // 設(shè)置緩存區(qū) res = curl_easy_perform(curl); if (res != CURLE_OK) { printf("curl_easy_perform failed: %s\n", curl_easy_strerror(res)); } curl_easy_cleanup(curl); fclose(fp); } return 0; }
在上述代碼中,我們通過libcurl庫中提供的CURL庫函數(shù)及回調(diào)函數(shù)來實現(xiàn)獲取指定頁面的HTML代碼,并將獲取到的內(nèi)容寫入緩存區(qū)中,最后保存在文件中。
需要注意的是,本文代碼所使用的是Linux操作系統(tǒng)。對于其他操作系統(tǒng)如Windows,可能需要做一些修改。