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

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.039 c
14-1087476561
новичок
2004-06-17 16:49
2004.07.04
FlexGraphics


14-1087041779
juiceman
2004-06-12 16:02
2004.07.04
Как установить в 98ой сетевое окружение ?


1-1087305487
Zemal
2004-06-15 17:18
2004.07.04
Как реализовать интерфейс как в Delphi?


6-1083350751
zol
2004-04-30 22:45
2004.07.04
как создать программу для динамического изменения ип?


14-1087193128
Rule
2004-06-14 10:05
2004.07.04
Как Вы относитесь к максималистам ... ?





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