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

Вниз

HTML текст без тегов используя mshtml.dll   Найти похожие ветки 

 
-=Le][=- ©   (2007-03-03 16:35) [0]

Прога стягивает сайт в переменную string.


var
 Http1: TIdHTTP;
 strRead: string;
 strUrl: string;
...
 strRead := Http1.Get (StrUrl);


Как извлеч текст сайта без тегов используя mshtml.dll?


 
Dmitrij_K   (2007-03-03 21:48) [1]

поищи IHTMLDocument2 на http://forum.vingrad.ru/delphi-activex-com-corba-ole.html


 
-=Le][=- ©   (2007-03-04 13:52) [2]

Cпасибо! Нашол прымеры и составил свой код.

function TFindWebThread.GetHtmlText: string;
var
 doc : IHTMLDocument2;
 v   : Variant;
begin
 v    := VarArrayCreate([0, 0], varVariant);
 v[0] := strRead;
 CoInitialize(nil);
 doc  := CoHTMLDocument.Create as IHTMLDocument2;
 doc.writeln(PSafeArray(TVarData(v).VArray));
 Result:=doc.body.innerText;
 doc.close;
end;


 
Ш-К   (2007-03-05 05:16) [3]

А теперь заюзай эту функцию для стрингов:
"<TABLE><TD><P>1111</P></TD><TD><P>2222</P></TD></TABLE>"и
"<TD><P>1111</P></TD><TD><P>2222</P></TD>";
Посмотри на разницу. А должно одно и то же получаться.


 
-=Le][=- ©   (2007-03-05 09:22) [4]


> А теперь заюзай эту функцию для стрингов:
> "<TABLE><TD><P>1111</P></TD><TD><P>2222</P></TD></TABLE>"и
> "<TD><P>1111</P></TD><TD><P>2222</P></TD>";
> Посмотри на разницу. А должно одно и то же получаться.


Разница есть! И что посоветуешь делать?


 
Ш-К   (2007-03-05 10:40) [5]

Я не знаю. У меня те же проблемы.
Пиши сюда, если найдешь.


 
Ш-К   (2007-03-05 11:06) [6]

Пока залатал так:
S:= StringReplace(S, "<table", "<span", [rfReplaceAll, rfIgnoreCase]);
S:= StringReplace(S, "</table", "</span", [rfReplaceAll, rfIgnoreCase]);


 
Vlad Oshin ©   (2007-03-06 14:22) [7]

procedure TForm1.Button1Click(Sender: TObject);
var
strRead: string;
strUrl: string;

function GetHtmlText: string;
var
doc : IHTMLDocument2;
v   : Variant;
 PersistFile: IPersistFile;
begin
v    := VarArrayCreate([0, 0], varVariant);
v[0] := strRead;
CoInitialize(nil);
doc  := CoHTMLDocument.Create as IHTMLDocument2;
doc.writeln(PSafeArray(TVarData(v).VArray));

PersistFile := Doc as IPersistFile;
PersistFile.save(StringToOleStr("c:\1.txt"), true);


Result:=doc.body.innerText;
doc.close;
end;
begin
strRead := idHttp1.Get ("http://localhost/login.htm");
GetHtmlText;
end;


 
-=Le][=- ©   (2007-03-07 14:59) [8]


> PersistFile := Doc as IPersistFile;
> PersistFile.save(StringToOleStr("c:\1.txt"), true);
>


Зачем в сохранять файл?


 
Vlad Oshin ©   (2007-03-07 16:02) [9]

не знаю
а что не надо?
а вдруг кто спросит, где? А тут ты - а вот:



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

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

Наверх




Память: 0.46 MB
Время: 0.061 c
1-1186402346
DevilDevil
2007-08-06 16:12
2007.11.11
Проблема с прорисовкой содержимого панелей (TPanel)


15-1191930668
Nucer
2007-10-09 15:51
2007.11.11
Как правильно писать программы?


8-1168929934
_Dimm
2007-01-16 09:45
2007.11.11
DSPack - PlayCap


15-1191793301
SKIPtr
2007-10-08 01:41
2007.11.11
Перкевод в спящий режим


2-1192697486
sman
2007-10-18 12:51
2007.11.11
Окна на desktop черепицей, если одно сделано на Delphi





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