Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.07.04;
Скачать: CL | DM;

Вниз

Анализ гипертекста   Найти похожие ветки 

 
Stein   (2004-06-22 18:13) [0]

Добрый день! Буду признателен за любую информацию о том, как можно проанализировать HTML-страницу, при этом выделив для себя нужную информацию. К примеру: есть таблица, в первой строке которой содержится "Что-то", во второй - "Что-то другое". Как выленить из этой таблицы (из HTML тегов) нужные мне значения?


 
Stein   (2004-06-22 18:24) [1]

Да, забыл, естественно нужно узнать, что "Что-то" связано именно с "Что-то другое".

С уважением.


 
Serge ©   (2004-06-22 18:30) [2]

uses MSHTML_TLB (import ActiveX)
...
IHTMLElement [outer[inner]Text]
IHTMLTableCol
IHTMLRowRow
IHTMLTableCell
...
TRowCollection : IHTMLElementCollection
Element2 : IHTMLElement2;

TRowCollection := (Element2 As IHTMLElement2).getElementsByTagName("TR");
...


 
Stein   (2004-06-22 18:41) [3]

Спасобо, я наверное некорректно сформулировал вопрос. Мне нужно по-тупому, т.е. ручками это сделать. Анализ текста...


 
Polevi ©   (2004-06-22 23:27) [4]

F1 string handling routines


 
Darrin ©   (2004-06-22 23:37) [5]

Вот так я выдерал из HTML все URL:

procedure ExtractURLFromHTML(AHTML: string; var AURL: TStringList; ALink: string);
var
 tstr: string;
 i: integer;
 pStart, pEnd: integer;
 htmlName: string;
 tAHTML: string; // HTML ????? ? ?????? ????????
const
 OpenTag = "href="";
 OpenTag_l = 5;
 CloseTag = """;
 CloseTag_l = 1;
begin
//
// for i:=0 to AHTML.Count-1 do
//   tstr:=tstr+#13#10+AHTML.Strings[i];
tstr:=AHTML;
tAHTML:=lowercase(tstr);
pStart:=1;
while pStart<>0 do
begin
  pStart:=pos(OpenTag,tAHTML);
  if pStart<>0 then
  begin
    delete(tAHTML,1,pStart+OpenTag_l);
    delete(tstr,1,pStart+OpenTag_l);
    pEnd:=pos(CloseTag,tAHTML);
    if pEnd<>0 then
    begin
      AURL.Add(midstr(tstr,1,pEnd-1));
    end;
  end;
end;
HTMLname:=ExtractFileNameFromURL(ALink);
pStart:=pos(HTMLname,ALink);
delete(ALink,pStart,length(HTMLname));
i:=length(ALink);
if i>0 then
  if not (ALink[i]="/") then ALink:=ALink+"/";
for i:=0 to AURL.Count-1 do
begin
  pStart:=pos("http://",AURL.Strings[i]);
  if pStart=0 then
    AURL.Strings[i]:=ALink+AURL.Strings[i];
end;
end;



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

Текущий архив: 2004.07.04;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.039 c
8-1082041971
Pa5ha
2004-04-15 19:12
2004.07.04
ColorKey&amp;Direct3D


6-1082043089
Cfytr
2004-04-15 19:31
2004.07.04
авторизация


1-1087370524
ПсихЪ
2004-06-16 11:22
2004.07.04
Как передать процедуре из DLL процедуру в качетсве параметра.


1-1087392711
Tom
2004-06-16 17:31
2004.07.04
Delphi и DLL на C


4-1085254938
kat
2004-05-22 23:42
2004.07.04
Как осуществить чтение данных из своей программы