Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 2012.05.06;
Скачать: [xml.tar.bz2];

Вниз

WinInet   Найти похожие ветки 

 
sloosar ©   (2009-10-15 19:02) [0]

Доброго времени суток.
У меня такой вопрос:
Вот функция для сохранения HTML кода страницы

function GetUrl(const URL: String): String;

   const
 HTTP_PORT = 80;
 Header = "Content-Type: application/x-www-form-urlencoded" + sLineBreak;
var
 FSession, FConnect, FRequest: HINTERNET;
 FHost, FScript: String;
 Ansi: PAnsiChar;
 Buff: array [0..1023] of Char;
 BytesRead: Cardinal;

 begin

 Result := "";
 // Небольшой парсинг
 // вытаскиваем имя хоста и параметры обращения к скрипту
 FHost := DelHttp(Url);
 FScript := Url;
 Delete(FScript, 1, Pos(FHost, FScript) + Length(FHost));

 // Инициализируем WinInet
FSession := InternetOpen("DMFR",PRE_CONFIG_INTERNET_ACCESS , nil, nil,
INTERNET_FLAG_RELOAD);
//FSession := InternetOpen("DMFR",INTERNET_OPEN_TYPE_PROXY ,"74.140.232.74:8085", nil, 0);

 if not Assigned(FSession) then Exit;
 try
   // Попытка соединения с сервером
   FConnect := InternetConnect(FSession, PChar(FHost), HTTP_PORT, nil,
                               "HTTP/1.0", INTERNET_SERVICE_HTTP, 0, 0);
   if not Assigned(FConnect) then Exit;
   try
     // Подготавливаем запрос страницы
     Ansi := "text/*";
     FRequest := HttpOpenRequest(FConnect, "GET", PChar(FScript), "HTTP/1.0",
                                 "", @Ansi, INTERNET_FLAG_RELOAD, 0);
     if not Assigned(FConnect) then Exit;
     try
       // Добавляем заголовки
       if not (HttpAddRequestHeaders(FRequest, Header, Length(Header),
                                     HTTP_ADDREQ_FLAG_REPLACE or
                                     HTTP_ADDREQ_FLAG_ADD)) then Exit;
       // Отправляем запрос
       if not (HttpSendRequest(FRequest, nil, 0, nil, 0)) then Exit;
       // Получаем ответ
       FillChar(Buff, SizeOf(Buff), 0);
       
       repeat
         Result := Result + Buff;
         
         FillChar(Buff, SizeOf(Buff), 0);
         InternetReadFile(FRequest, @Buff, SizeOf(Buff), BytesRead);
       until BytesRead = 0;
     finally
       InternetCloseHandle(FRequest);
     end;
   finally
     InternetCloseHandle(FConnect);
   end;
 finally
   InternetCloseHandle(FSession);
 end;
end;

Может кто подскажет почему не сохраняется код с таким урлом :
http://www.google.com.ua/#q=fff


 
Медвежонок Пятачок ©   (2009-10-15 20:18) [1]

потому что
http://www.google.com.ua/search?q=fff


 
sloosar ©   (2009-10-15 21:18) [2]

О точно, чёт я затупил :-)



Страницы: 1 вся ветка

Форум: "Сети";
Текущий архив: 2012.05.06;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.003 c
2-1325978911
Gu
2012-01-08 03:28
2012.05.06
Exception dll


2-1326047881
3asys
2012-01-08 22:38
2012.05.06
ADO Connection


2-1326061288
Anthony
2012-01-09 02:21
2012.05.06
Как узнать что в буфере обмена Windows есть текст?


2-1326037158
toropoff
2012-01-08 19:39
2012.05.06
скрол грида


2-1325423630
Andvitar
2012-01-01 17:13
2012.05.06
как сделать ссылку на сайт в форме





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский