wyciąganie linkow www ze strony

0

Witam
mam takie pytanie : Jak skutecznie wyciągnąć wszystkie linki "www" ze strony
próbuję wyłuskać wszystkie linki www z tresci HTML srony ale nie zawsze działa to porwawnie czy ktoś mógby mi zwrocić uwage gdzie tkwi blad w mysleniu ? oto moj kod : ( nie jest zbyt skomplikowany ) :)
kod działa ok na liniach zawierających tylko

gdy w linii ma inf dodatkowe np inne texty lub znaczaniki html to sie troche gubi i zwraca glupoty

w memo1 jest tresc strony

for licznik_lini:=0 to memo1.Lines.Count do
begin
s:=memo1.lines.strings[licznik_lini];

if (pos('http://',s)<>0)then
begin
delete(s,pos('">',s),length(s));
delete(s,1,1+pos('//',s));
memo1.Lines.Delete(licznik_lini);
memo1.lines.Insert(licznik_lini,s);
end
else
memo1.Lines.Delete(licznik_lini);
end;
memo1.Refresh;
end;

pozdrawiam
Sebastian

0

Nie jestem pewien, ale tak na szybko:

Na początku piszesz ze wszystko miedzy <A itd.. a w warunku masz

if (pos('http://',s)<>0)then

Tak mogą zaczynac sie nie tylko linki, ale rownież np. adresy fotek...

0

wiem thx ale fcja zwraca mi bledy, tzn nie wycina pozostalego textu z tresi HTML :(
pozdr
Seba

0

polecam wyrazenia regularne :)
http://www.regular-expressions.info/
http://regexpstudio.com/ - tu dla delphi :)

0

po co usuwasz linię z memo1?? Jak usuniesz tą, nad któą się aktualnie znęcałeś to nastepna do przeglądu nie będzie kolejna tylko 2 w kolejności bo kolejna zajmie miejsce usuniętej. poza tym nie for licznik_lini:=0 to memo1.Lines.Count do tylko for licznik_lini:=0 to memo1.Lines.Count - 1 do

0

a wiecie moze jakiego komponentu uzyć zeby było zdarzenie ONHTMLTAG lub coś podobnego ?
pozdr
Seba

0
function  GetLinks(WebBrowser : TWebBrowser) : string;
var s : string;
    a : Integer;
begin
   for a := 0 to WebBrowser.OleObject.Document.Links.Length-1 do
      s:=s+(WebBrowser.OleObject.Document.Links.Item(a).href)+#13;
   Result:=s;
end;

;)

0

Witam
bardzo dziękuję za pomoc chodzi jak burza i to szybciej znacznie niz mój sposob
pozdrawiam
Seba
[soczek]

1 użytkowników online, w tym zalogowanych: 0, gości: 1