Мне наконец-то удалось загрузить веб-страницу на диск с помощью библиотеки wininet.В настоящее время я использую следующий код C ++:
#include <windows.h>
#include <wininet.h>
#include <stdio.h>
#include <fstream>
#include <cstring>
#define SIZE 128
int main(int argc, char ** argv)
{
HINTERNET Initialize,Connection,File;
DWORD dwBytes;
char ch;
Initialize = InternetOpen("HTTPGET",INTERNET_OPEN_TYPE_DIRECT,NULL,NULL,0);
Connection = InternetConnect(Initialize,argv[1],INTERNET_DEFAULT_HTTP_PORT,
NULL,NULL,INTERNET_SERVICE_HTTP,0,0);
File = HttpOpenRequest(Connection,NULL,"/index.html",NULL,NULL,NULL,0,0);
if(HttpSendRequest(File,NULL,0,NULL,0))
{
std::ofstream webSource;
webSource.open(strcat(argv[1], "__.html"));
while(InternetReadFile(File,&ch,1,&dwBytes))
{
if(dwBytes != 1)break;
webSource << ch;
}
webSource.close();
}
InternetCloseHandle(File);
InternetCloseHandle(Connection);
InternetCloseHandle(Initialize);
return 0;
}
Но это единственное, что я получаю, когда решаю скачать с www.rottentomatoes.com
<HEAD><TITLE>Flixster</TITLE>
<META http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
<meta http-equiv="refresh" content="0;url=index.jsp">
<!--
<meta http-equiv="refresh" content="0;url=maintenance.html">
-->
</HEAD>
<BODY>
</body>
</html>
Чтопроблема здесь?Я должен получать текст, ссылки, рамки с изображениями и HTML около 150 КБ.
Любая помощь приветствуется!