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

Вниз

"Кракозябры" вместо русских букв при получении HTMLa WEBстраницы   Найти похожие ветки 

 
__DATA__   (2007-04-12 07:43) [0]

Получаю HTML код WEB страницы так :


function GetHTMLSource(URL: String): String;
begin
 try
   Result := "";
   NMHTTP.Get(URL);
   Result := NMHTTP.Body;
 except

 end;
end;


Функция возвращает HTML в котором вместо русских букв отображаются "кракозябры", как решить проблемму с отображением русских символов?


 
clickmaker ©   (2007-04-12 09:58) [1]

кодировка какая у Body?


 
__DATA__   (2007-04-12 12:00) [2]


> clickmaker ©   (12.04.07 09:58) [1]


А как посмотреть?


 
__DATA__   (2007-04-12 12:04) [3]

Обрабатываю вот эту страницу http://alfa.kz/forum/shs/?forum_id=9


 
clickmaker ©   (2007-04-12 12:10) [4]

<META http-equiv="Content-Type" content="text/html; charset=koi8-r">

см. NMHTTP.Header


 
__DATA__   (2007-04-12 12:18) [5]


> clickmaker ©   (12.04.07 12:10) [4]


NMHTTP.Header =

HTTP/1.1 200 OK
Date: Thu, 12 Apr 2007 08:17:40 GMT
Server: Apache
X-Powered-By: PHP/4.4.6
Last-Modified: Thu, 12 Apr 2007 08:17:40 GMT
Set-Cookie: PHPSESSID=f74d71fe392d1bb500e87047af76c82c; expires=Thu, 12 Apr 2007 11:17:40 GMT; path=/
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Connection: close
Content-Type: text/html; charset=koi8-r


 
clickmaker ©   (2007-04-12 12:20) [6]


> [5] __DATA__   (12.04.07 12:18)

ну вот, видишь там charset?


 
__DATA__   (2007-04-12 12:23) [7]


> clickmaker ©   (12.04.07 12:20) [6]


Спасибо разобрался!



function GetHTTP(URL: String): String;
type
 TConvertChars = array[ #128..#255] of char;

const
 Win_KoiChars: TConvertChars = (
#128,#129,#130,#131,#132,#133,#134,#135,#136,#137,#060,#139,#140,#141,#142,#143,
#144,#145,#146,#147,#148,#169,#150,#151,#152,#153,#154,#062,#176,#157,#183,#159,
#160,#246,#247,#074,#164,#231,#166,#167,#179,#169,#180,#060,#172,#173,#174,#183,
#156,#177,#073,#105,#199,#181,#182,#158,#163,#191,#164,#062,#106,#189,#190,#167,
#225,#226,#247,#231,#228,#229,#246,#250,#233,#234,#235,#236,#237,#238,#239,#240,
#242,#243,#244,#245,#230,#232,#227,#254,#251,#253,#154,#249,#248,#252,#224,#241,
#193,#194,#215,#199,#196,#197,#214,#218,#201,#202,#203,#204,#205,#206,#207,#208,
#210,#211,#212,#213,#198,#200,#195,#222,#219,#221,#223,#217,#216,#220,#192,#209) ;
 Koi_WinChars: TConvertChars = (
#128,#129,#130,#131,#132,#133,#134,#135,#136,#137,#138,#139,#140,#141,#142,#143,
#144,#145,#146,#147,#148,#149,#150,#151,#152,#153,#218,#155,#176,#157,#183,#159,
#160,#161,#162,#184,#186,#165,#166,#191,#168,#169,#170,#171,#172,#173,#174,#175,
#156,#177,#178,#168,#170,#181,#182,#175,#184,#185,#186,#187,#188,#189,#190,#185,
#254,#224,#225,#246,#228,#229,#244,#227,#245,#232,#233,#234,#235,#236,#237,#238,
#239,#255,#240,#241,#242,#243,#230,#226,#252,#251,#231,#248,#253,#249,#247,#250,
#222,#192,#193,#214,#196,#197,#212,#195,#213,#200,#201,#202,#203,#204,#205,#206,
#207,#223,#208,#209,#210,#211,#198,#194,#220,#219,#199,#216,#221,#217,#215,#218) ;

function Win_KoiConvert(const St: string): string;
var i: integer;
begin
 Result:=St;
 for i:=1 to Length(St) do
 if St[i]>#127 then
   Result[i]:=Koi_WinChars[St[i]];
end;

begin
 try
   Result := "";
   NMHTTP.Get(URL);
   Result := Win_KoiConvert(NMHTTP.Body);
 except

 end;
end;



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

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

Наверх




Память: 0.46 MB
Время: 0.062 c
2-1179387067
FRAGMIR
2007-05-17 11:31
2007.06.10
ADOconnection


2-1179720999
Руслан56
2007-05-21 08:16
2007.06.10
Как открыть *.dbf


2-1179515212
Пргораммер
2007-05-18 23:06
2007.06.10
Код клавиши Esc


9-1152687836
Blondin
2006-07-12 11:03
2007.06.10
DirectDraw - есть ли ограничения на размер и к-во поверхностей ?


15-1179142527
Knight
2007-05-14 15:35
2007.06.10
Прога контроля прокси...





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский