![]() |
Link aus Quelltext raussuchen und auflisten
Hallöchen!
ich habe folgendes Problem... Ich möchte ein Programm schreiben, welches mir eine Wortsammlung von Internetseiten zusammstellt. Dazu hole ich mir den Quelltext einer von mir eingegebenen Startseite und suchen diesen nach Wörtern ab. Damit meine Wortsammlung schön groß wird, möchte ich die im Quelltext gefundenen Links auflisten und nacheinander nach dem gleichen Schema abarbeiten. Wenn das funktioniert, dann müsste das ganze ja unendlich lange gehen nzw bis die Festplatte voll ist(oder halt die DB). Deswegen möchte ich auch diese PROCEDURE jederzeit unterbrechen können. mein Problem liegt jetzt darin, dass ich zwar mit POS und COPY den Link lokalisieren und copieren kann, aber keine Länge für COPY angeben kann, da ich ja die Länge des Links nicht kenne. Wie kann man das am besten bewerkstelligen? was ich bis jetz habe, ist das:
Delphi-Quellcode:
wo die ??? stehen hörts bei mir auf...
RichEdit_Quellcode.Lines.Add(iDHTTP1.Get('http://'+Editinet.Text)); //<== Protkoll angeben!!!
For i:=1 to RichEdit_Quellcode.Lines.Count do begin Memo_Links.Lines.Add(Copy(RichEdit_Quellcode.Lines[i],POS('<a href="',RichEdit_Quellcode.Lines[i]),???))); Ich hoffe das mir jemand helfen kann! mfg knolli |
DP-Maintenance
Dieses Thema wurde von "SirThornberry" von "Neuen Beitrag zur Code-Library hinzufügen" nach "Object-Pascal / Delphi-Language" verschoben.
|
Re: Link aus Quelltext raussuchen und auflisten
ein Link wird durch "</a>" abgeschlossen. Wenn du also mit PosEx danach suchst (beginnend ab dem Anfang des Links) so kannst du die Länge errechnen.
|
Re: Link aus Quelltext raussuchen und auflisten
wie soll der befehl dann aussehen?
Delphi-Quellcode:
oder wie sorry von PosEx höre ich heute zum ersten mal..
Memo_Links.Lines.Add(Copy(RichEdit_Quellcode.Lines[i],POS('<a href="',RichEdit_Quellcode.Lines[i]),PosEx('</a>',RichEdit_Quellcode.Lines[i]))));
|
Re: Link aus Quelltext raussuchen und auflisten
Zitat:
Uebersichtlicher waere es vielleicht so (kurz und knackig, aber vielleicht nicht fuer alle Zwecke in dieser Form sinnvoll): [code=delphi] s:=RichEdit_Quellcode.Lines[i]; i:=pos(' ![]() enthalten. Daher sollte das erste Vorkommen von chr(34) NACH dem Anker das Ende des URI sein. |
Re: Link aus Quelltext raussuchen und auflisten
Zitat:
Einfach mal in der Hilfe nachschlagen - dafür ist Sie da... Dennoch würde ich vielleicht zu dem ![]() Edit: Rechtschreibfehler korrigiert |
Re: Link aus Quelltext raussuchen und auflisten
Zitat:
Da ich vor zwanzig Jahren meine eigenen Routinen dieser Art geschrieben habe - als es die noch nicht so gab, bin ich nicht imnmer auf der Hoehe der Zeit, was mittlerweile alles mitgeliefert wird. Da ich meine eigenen Bibliotheken einsetze. [EDIT: mit posex finde ich es jedenfalls unuebersichtlicher:
Delphi-Quellcode:
Memo_Links.Lines.Add(Copy(RichEdit_Quellcode.Lines[i],POS('<a href="',RichEdit_Quellcode.Lines[i]),PosEx('"',RichEdit_Quellcode.Lines[i],POS('<a href="',RichEdit_Quellcode.Lines[i])))));
|
Re: Link aus Quelltext raussuchen und auflisten
Zitat:
|
Re: Link aus Quelltext raussuchen und auflisten
Hallo,
natürlich lässt sich jeder Text als einfache Folge von Zeichen betrachten und mittels PosEx() und Copy() untersuchen. Berücksichtigt man die besondere Semantik (HTML), dann hilft vielleicht ![]() Freundliche Grüße |
Re: Link aus Quelltext raussuchen und auflisten
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:23 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz