Я профессиональный юрист и программист-любитель (в основном C++). Ежедневно мне приходится заходить на один и тот же веб-сайт и искать массу судебных дел (обычный текст). Недавно мне пришла в голову идея написать простую функцию C++ для автоматической отправки данных формы на сайт, что сэкономило бы мне много рабочего времени. Я изучал WinInet в течение последних нескольких дней, и после многих часов мне удалось отправить простой запрос GET и получить исходный код главной страницы, но я не могу пойти дальше этого. Моя цель — отправить POST-запрос (думаю) с параметрами поиска на сайт и получить в ответ исходный код реальной страницы результатов поиска.
Что мне удалось запрограммировать пока почти бесполезно, но, по крайней мере, дает представление о моем нынешнем состоянии.
#include
#include
#include
#pragma comment (lib, "Wininet.lib")
bool GetRequest() {
HINTERNET hSession = InternetOpen(L"Mozilla/5.0", INTERNET_OPEN_TYPE_PRECONFIG, NULL, NULL, 0);
if (!hSession) return false;
HINTERNET hConnect = InternetConnect(hSession, L"scon.stj.jus.br", INTERNET_INVALID_PORT_NUMBER, L"", L"", INTERNET_SERVICE_HTTP, 0, 0);
if (!hConnect) return false;
HINTERNET hRequest = HttpOpenRequest(hConnect, L"GET", L"/", NULL, NULL, NULL, INTERNET_FLAG_KEEP_CONNECTION, 0);
if (!hRequest) return false;
if (!HttpSendRequest(hRequest, 0, 0, 0, 0)) return false;
//from here on, I am able to read the main page source code using InternetReadFile, but I can't submit any form data
InternetCloseHandle(hRequest);
InternetCloseHandle(hConnect);
InternetCloseHandle(hSession);
return true;
}
Подробнее здесь: https://stackoverflow.com/questions/793 ... -wininet-c