+ Ответить в теме
Показано с 1 по 4 из 4

Тема: InternetOpen, InternetReadFile HTML упакована gzip,что дела?

  1. #1
    senior developer Blood_Magic is on a distinguished road
    Регистрация
    30.06.2005
    Сообщений
    268
    Вес репутации
    19

    По умолчанию InternetOpen, InternetReadFile HTML упакована gzip,что дела?

    Код примерно следующий, получаю HTML, можно чере Socket, значение не имеет. Проблема в том, что с некоторых сайтов страница приходит, я так понимаю, упакованная gzip. Что с ней делать, как получить текст HTML. Если можно примерчик.

    function DownloadURL_NOCache(const aUrl: string; var s: String): Boolean;
    var
    hSession: HINTERNET;
    hService: HINTERNET;
    lpBuffer: array[0..1024 + 1] of Char;
    dwBytes: DWORD;
    dwBytesRead: DWORD;
    p,p1ointer;
    begin
    Result := False;
    s := '';
    // hSession := InternetOpen( 'MyApp', INTERNET_OPEN_TYPE_DIRECT, nil, nil, 0);
    hSession := InternetOpen('Microsoft Internet Explorer', INTERNET_OPEN_TYPE_PRECONFIG, nil, nil, 0);
    try
    if Assigned(hSession) then
    begin
    dwBytesRead:=1024;
    hService := InternetOpenUrl(hSession, PChar(aUrl), nil, 0, INTERNET_FLAG_RELOAD, 0);
    HttpQueryInfo(hService,HTTP_QUERY_STATUS_TEXT or HTTP_QUERY_ACCEPT_ENCODING,@lpBuffer,dwBytesRead,d wBytes);
    if Assigned(hService) then
    try
    while True do
    begin
    dwBytesRead := 1024;
    InternetReadFile(hService, @lpBuffer, 1024, dwBytesRead);
    if dwBytesRead = 0 then break;
    lpBuffer[dwBytesRead] := #0;
    s := s + lpBuffer;
    end;
    Result := True;
    finally
    InternetCloseHandle(hService);
    end;
    end;
    finally
    InternetCloseHandle(hSession);
    end;
    end;

  2. По умолчанию

     
    Хотите избавиться от рекламы? Зарегистрируйтесь
  3. #2
    Administrator Админ
    system architect
    AiK is on a distinguished road Аватар для AiK
    Регистрация
    13.02.2004
    Адрес
    СПб
    Сообщений
    2,298
    Вес репутации
    80

    По умолчанию

    Blood_Magic, ты где-то в заголовке сообщаешь, что можешь принимать gzip. Очевидно, этот параметр HTTP_QUERY_ACCEPT_ENCODING. Убери его и всё путём будет.
    Даже самый дурацкий замысел можно воплотить мастерски

  4. #3
    senior developer Blood_Magic is on a distinguished road
    Регистрация
    30.06.2005
    Сообщений
    268
    Вес репутации
    19

    По умолчанию Blood_Magic

    Не катит, этого не было, я уже перебором пошел и случайно на этом параметре остановился

  5. #4
    Administrator Админ
    system architect
    AiK is on a distinguished road Аватар для AiK
    Регистрация
    13.02.2004
    Адрес
    СПб
    Сообщений
    2,298
    Вес репутации
    80

    По умолчанию

    Чудес на свете не бывает. Поставь сниффер или прокси с логом и ты увидишь, что ты отсылаешь на сервер HTTP заголовок Accept-Encoding. Если его нет, то никто тебе gzip не отправит - всё работает строго в соответствии с rfc2616.
    Даже самый дурацкий замысел можно воплотить мастерски

+ Ответить в теме

Похожие темы

  1. Вопрос по CSS+HTML
    Таблица находится в ячейке другой таблицы. При этом высота ячейки всё время меняется, но она заведомм больше высоты содержимого таблицы, которую она...
    от Zroman в разделе Вопрошайка
  2. Из PDF в HTML
    Как перевести из PDF в HTML? Чтобы сохранились все отступы, переносы пробелы и т.д.
    от Bolat в разделе JScript, VBScript, DHTML...
  3. HTML <-> WORD
    Ребята, передо мной стоит задача: найти обьект, позволяющий транслировать текст из Word в html и обратно.(Это необходимо для написания...
    от Юрий Дорофеев в разделе JScript, VBScript, DHTML...
  4. MFC WinINET InternetReadFile-не получается полностью загрузк
    Проблема состоит в следующем: Используя как пример статью http://rsdn.ru/article/inet/inetapi.xml, сделал быстро загрузчик файлов из Интернета. Для...
    от iAlexander в разделе C и C++
  5. Помогите разобраться со слоями в HTML (HTML + JavaScript + )
    Просьба ко всем участникам форума: помогите немного разобраться с порядком слоев в HTML. Ваши советы очень важны для меня. Есть HTML страничка на...
    от Lexus в разделе JScript, VBScript, DHTML...

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения