Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Quellcode von TWebbrowser auslesen dauert extrem lang (https://www.delphipraxis.net/130900-quellcode-von-twebbrowser-auslesen-dauert-extrem-lang.html)

napsterxx 15. Mär 2009 13:21


Quellcode von TWebbrowser auslesen dauert extrem lang
 
Hallo ihr lieben.
Ich fodere mit einer TWebbrowser Komponente eine Website an, diese ist sehr groß (rund 2,2MB) und enthält eine Liste (rund 7000 Einträge). Wenn nun die Website geladen ist hole ich mir den Quellcode, und gehe diesen danach durch, lösche einige Sachen, sodass ich am Ende alle Namen der Einträge habe - funktioniert auch prima - bei 50 Einträgen aber bei 7000 steht eigentlich alles. Es dauert extrem lang den Quellcode du "phrasen" sprich nach den einzelnen Namen zu suchen. Derzeit mache ich das so:

Delphi-Quellcode:
    while(Pos('/download/', swHTMLText) > 0) do
    begin
        Delete(swHTMLText, 1, Pos('/download/', LowerCase(swHTMLText)) + Length('/download'));
        titel := Copy(swHTMLText, 1, Pos('/', swHTMLText)-1);
         ToDo.Add(link);
    end;

omata 15. Mär 2009 13:23

Re: Quellcode von TWebbrowser auslesen dauert extrem lang
 
Benutzte doch IdHTTP + Reguläre Ausdrücke.

Bernhard Geyer 15. Mär 2009 13:25

Re: Quellcode von TWebbrowser auslesen dauert extrem lang
 
Zieh mal das LowerCase aus der Schleife raus. Ist unnötig das für jedes Vorkommen ausführen zu lassen.

Und falls die "/downloads/" z.B. nur bei HTML-Links vorhanden sind, so lass dir doch vom Webbrowser-DOM nur die Link-Elemente geben.

napsterxx 15. Mär 2009 13:36

Re: Quellcode von TWebbrowser auslesen dauert extrem lang
 
Also irgendwie finde ich keine mir einileuchtende Lösung wie ich nur z.B. <a> Tags mit deren Inhalt erhalte. Meinst du vielleicht einen XML Phraser?

mkinzler 15. Mär 2009 13:38

Re: Quellcode von TWebbrowser auslesen dauert extrem lang
 
Wie erwähnt entweder Tags sequentiell suchen oder per regulären Ausdrücken

napsterxx 15. Mär 2009 13:47

Re: Quellcode von TWebbrowser auslesen dauert extrem lang
 
Würde ich lieber die Variante mit den Tags einschlagen.

Delphi-Quellcode:
WebBrowser.OleObject.Document.all.tags('A').??
Könnte das so funktionieren?


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:15 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz