Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   HTML Table parsen in stringgrid (https://www.delphipraxis.net/187796-html-table-parsen-stringgrid.html)

wschrabi 4. Jan 2016 18:48

HTML Table parsen in stringgrid
 
Liste der Anhänge anzeigen (Anzahl: 1)
HAllo,
ich habe ein Problem. Ich habe eine aufwendige WWW Seite mit TWebbrowser in Delphi XE5 angezeigt, wo viele Tabellen vorkommen.
Nun mochte ich eine spez. Tabelle die eine id aufweist in ein Stringgrid parsen. Kann mir da jemand sagen wie ich das intelligent lösen kann.
ich habe diesen Ansatz, doch da kommt nirgdwo die id Bezeichnung der Table vor.

Delphi-Quellcode:
procedure TForm1.Button25Click(Sender: TObject);
var
   i,k, j: integer;
   ovTable: OleVariant;
begin
   for k := 0 to 79 do
   begin
   try
   
   ovTable := WebBrowser2.OleObject.Document.all.tags('table').item(k);
   for i := 0 to (ovTable.Rows.Length - 1) do
      begin
         for j := 0 to (ovTable.Rows.Item(i).Cells.Length - 1) do
         begin
         //StringGrid1.Cells[j,i]:=ovTable.Rows.Item(i).Cells.Item(j).InnerText;
         Memo5.Lines.Add('TableItem:'+inttostr(k)+'_'+INttostr(j)+','+Inttostr(i)+': '+ovTable.Rows.Item(i).Cells.Item(j).InnerText)
         end;
      end;
     
   except
      UpDate_LOG.Lines.Add(DateTimeToStr(Now)+': k_Error : '+inttostr(k)+' ! ');
   end;
   end;
end;
ANbei ist auch die spe. Table als ZIP.

wschrabi 5. Jan 2016 04:18

AW: HTML Table parsen in stringgrid
 
Hallo nochmals,
also ich hab herausgefunden, dass die Result Table am Client mittels Javascript erst erstellt wird.
Gibt es da eine Möglichkeit, wie man die Table trotzdem irgendwie in ein Stringgrid von meinem JS-enabled TWebbrowser component saugen kann?
DANKE

wschrabi 5. Jan 2016 05:21

AW: HTML Table parsen in stringgrid
 
konnte es so lösen:
http://stackoverflow.com/questions/1...om-twebbrowser

Damit wird der Source nach JS-Execution als Stream gesichert und den kann ich dann nach den Table.-Itmes durchsuchen und parsen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:57 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