Подскажите, пожалуйста, как методом Idhttp.Get(url) получить сайт в правильной кодировке? Уже второй день мучаюсь, много гуглил, но ничего толком не нашел. причем тот же код в Delphi7 грузит страницу корректно. Результат записывается в Memo. Сайт в кодировке UTF-8.
Windows XP SP3/Lazarus SVN/FPC 2.6.1
TIdHTTP и кодировка сайта
Модератор: Модераторы
-
ViruZ
- постоялец
- Сообщения: 175
- Зарегистрирован: 30.05.2005 17:41:12
- Откуда: Украина
- Контактная информация:
Добавлю дополнительные сведения.
В исходном коде сайта стоит кодировка
Для загрузки сайта использую следующий фрагмент кода:
Вместо кириллицы вижу знаки вопроса.
Кириллиц необходима для поиска ключевых слов на сайте для загрузки информции.
В исходном коде сайта стоит кодировка
Код: Выделить всё
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />Для загрузки сайта использую следующий фрагмент кода:
Код: Выделить всё
IdHTTP1.HandleRedirects:=true;
Memo1.Clear;
Memo1.Text:=idhttp1.Get(myurl);
Вместо кириллицы вижу знаки вопроса.
Кириллиц необходима для поиска ключевых слов на сайте для загрузки информции.
-
alex208210
- постоялец
- Сообщения: 207
- Зарегистрирован: 12.05.2010 13:16:51
адрес сайта
-
alex208210
- постоялец
- Сообщения: 207
- Зарегистрирован: 12.05.2010 13:16:51
у меня сайт скачивается в правильной кодировке. (lazarus 0.9.30 fpc 2.4.2)
Если ничего не получается то подключай модуль lconvencoding и грузи сайт этим способами:
utf8toansi(idhttp1.Get(url));
ansitoutf8(idhttp1.Get(url));
koi8toutf8(idhttp1.Get(url));
utf8tokoi8(idhttp1.Get(url));
Если ничего не получается то подключай модуль lconvencoding и грузи сайт этим способами:
utf8toansi(idhttp1.Get(url));
ansitoutf8(idhttp1.Get(url));
koi8toutf8(idhttp1.Get(url));
utf8tokoi8(idhttp1.Get(url));
-
ViruZ
- постоялец
- Сообщения: 175
- Зарегистрирован: 30.05.2005 17:41:12
- Откуда: Украина
- Контактная информация:
Спасибо! Буду пробовать.
Добавлено спустя 20 часов 55 минут 47 секунд:
Решил перейти с Indy на Synapse - теперь нормально грузит сайт!
Использовал следующий код:
Добавлено спустя 20 часов 55 минут 47 секунд:
Решил перейти с Indy на Synapse - теперь нормально грузит сайт!
Использовал следующий код:
Код: Выделить всё
mysite:=THTTPSend.Create;
if mysite.HTTPMethod('GET',mysiteurl) then begin
Memo1.Clear;
Memo1.Lines.LoadFromStream(mysite.Document);
end else ShowMessage('Somesing wrong! '+IntToStr(mysite.ResultCode))