我想發一個http請求,獲取網站內容並檢查一個特定元素。目前我正在使用lcurl(從教程中獲得解釋)。這裏是我的代碼摘錄:從c網站獲取價值的最快方法
curl_global_init(CURL_GLOBAL_ALL);
CURL *myHandle;
CURLcode result;
struct BufferStruct output;
output.buffer = NULL;
output.size = 0;
//requested value is on this website
char* url = "https://www.somewebsite.com";
//set curl handle to write the website content into buffer
myHandle = curl_easy_init();
curl_easy_setopt(myHandle, CURLOPT_WRITEFUNCTION, WriteMemoryCallback);
curl_easy_setopt(myHandle, CURLOPT_WRITEDATA, (void*)&output);
curl_easy_setopt(myHandle, CURLOPT_URL, url);
curl_easy_perform(myHandle);
//searching for position of the requested value.
uint8_t* value_position = strstr(output.buffer, "value_description");
//copy the value (8 chars) into a buffer defined earlier
strncpy(value, value_position, 8);
//... clean up etc.
該代碼有效。但我不知道這是否是最快的方法... 任何想法如何更快地做到這一點?非常感謝!
歡迎來到StackExchange。但是,你似乎在錯誤的網站上;對於基本工作代碼的改進建議,您可能需要訪問https://codereview.stackexchange.com。但是,如果您的代碼的某個部分存在特定問題,請詳細解釋,此處的人員將很樂意提供幫助。你可能想要參加[遊覽]並閱讀[問]。當你這樣做時:歡迎來到StackOverflow,這是Q/A網站的特定程序問題。 – Yunnosch
我投票結束這個問題作爲題外話,因爲對於基本工作代碼的改進建議,你可能想要去codereview.stackexchange.com。 – Stargateur
@Yunnosch完美!老師教我! – Stargateur