Autor Beitrag
HenryHux
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 542
Erhaltene Danke: 33

Windows 7 Premium
Delphi XE, Eclipse
BeitragVerfasst: Mo 09.05.11 16:16 
Hi,

ich habe bei mir eine größere Tabelle (auch schön mit mehreren verschachtelten Tabellen...), die ich gerne auslesen würde.
Die Tabelle ist in dem html Format von <table> bis </table>.
Wenn nicht alles so mies verschachtelt wäre, würde ich selber was schreiben, aber so muss ich euch doch mal fragen, wie ich da am besten drangehe. Habe schon ein bisschen gegoogelt, aber nichts gefunden, was mir wirklich geholfen hat.
Vielleicht kennt ihr ja einen freeware Parser oder soetwas in der Art. Wenn nicht, scheue ich auch nicht davor den selbst zu schreiben, vielleicht habt ihr ja dazu Tipps. :wink:

Lg
Narses
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Administrator
Beiträge: 10183
Erhaltene Danke: 1256

W10ent
TP3 .. D7pro .. D10.2CE
BeitragVerfasst: Mo 09.05.11 16:28 
Moin!

user profile iconLannes hat hier mal ein Beispiel gezeigt, wie man den TWebBrowser zum Zerlegen der HTML-Seite benutzen kann. Dann kann man anhand der DOM-Syntax auch schön drauf zugreifen. Hab ich selbst schon in ein paar Projekten erfolgreich benutzt. :idea: ;)

cu
Narses

_________________
There are 10 types of people - those who understand binary and those who don´t.
HenryHux Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 542
Erhaltene Danke: 33

Windows 7 Premium
Delphi XE, Eclipse
BeitragVerfasst: Mo 09.05.11 16:43 
Danke für die Antwort!
Klappt so wie er es gepostet hat ganz gut, bei meiner Seite crashed noch, aber gut.
Mein Problem ist aber noch das Gleiche wie vorher.
Ich will die Tabelle ja nicht einfach in dem WebBrowser anzeigen lassen, sondern damit eigene Dinge anstellen, wie zum Beispiel Daten filtern.
Wenn ich mir die Tags aus dem WebBrowser hole, habe ich aber immernoch die html Form.
Am liebsten wäre mir, wenn ich die Daten in ein mehrdimensionales String-Array bekomme..

lg
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19338
Erhaltene Danke: 1752

W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Mo 09.05.11 18:56 
Genau dafür dient ja das Parsen. Wo du die Daten nach dem Auslesen dann speicherst, ist ja deine Sache.

In jedem Fall brauchst du einen Parser, ob du da jetzt den von MS benutzt, einen im Internet für Delphi suchst oder selbst einen schreibst, kannst du dir überlegen. ;-)
HenryHux Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 542
Erhaltene Danke: 33

Windows 7 Premium
Delphi XE, Eclipse
BeitragVerfasst: Mo 09.05.11 19:17 
Ok, hatte gerade schon angefangen selber einen zu schreiben, glaube das dauert recht lange bei solchen Tabellen.
Habe jetzt einige gesucht, gibt soviel, dass ich garnicht weiß, wo ich anfangen soll :D
Kannst du mir vielleicht einen empfehlen?
Hab hier zb gesucht, da wird man ja überschwemmt :D
www.torry.net/pages.php?id=216

Liebe Grüße
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19338
Erhaltene Danke: 1752

W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Di 10.05.11 04:54 
user profile iconNarses hat folgendes geschrieben Zum zitierten Posting springen:
Hab ich selbst schon in ein paar Projekten erfolgreich benutzt. :idea: ;)
Würde ich dir weniger raten, wenn es dir nur um das Parsen geht. ;-)

Das geht sehr viel schneller, wenn man das visuelle Objekt weglässt und nur den Parser benutzt. Ich habe nicht die Zeit eine kleine Demo dazu zu basteln, aber zum Glück habe ich hier eine gefunden: :mrgreen:
www.delphipraxis.net...nden.html#post441214
In diesem Thread wird darauf verlinkt und da geht es genau auch um das Einlesen einer Tabelle: :D
www.delphipraxis.net...esen.html#post782419
HenryHux Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 542
Erhaltene Danke: 33

Windows 7 Premium
Delphi XE, Eclipse
BeitragVerfasst: Di 10.05.11 15:29 
Ok, danke.
Habe es nach einiger Zeit hinbekommen, dass es mit den meisten Tabellen klappt.
Doch bei der die ich bearbeiten will, klappt das leider so nicht.
Ich habe mal ein schnell zusammengeklicktes Projekt angehangen, wo ihr den Fehler schnell seht;
Die anderen Tabellen dadrin. Ich will nicht unbedingt vorher alle verschachtelten Tabellen rausschneiden, vielleicht weiß ja noch jemand einen Tipp =)
Beschreibung (zip, 874.38 KB)
Einloggen, um Attachments anzusehen!
HenryHux Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 542
Erhaltene Danke: 33

Windows 7 Premium
Delphi XE, Eclipse
BeitragVerfasst: Mi 11.05.11 14:39 
Hi,

der Thread hat sich erledigt, habe dann mittlerweile auch mal den ICS-Kalender auf der Seite entdeckt -.-

lg
HenryHux Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 542
Erhaltene Danke: 33

Windows 7 Premium
Delphi XE, Eclipse
BeitragVerfasst: Fr 13.05.11 16:46 
Hi, tut mir leid, dass ich hier nochmal aufmachen muss, aber es will eben doch nicht so wie es soll :D
Das mit der ICS Datei hat wunderbar geklappt, doch leider waren nur ca die hälfte der Kurse eingetragen.
Also habe ich mich ran gemacht die HTML Tabelle soweit wie möglich lesbar zu machen.
Hat gut geklappt, ich habe jetzt eine schön lesbare HTML-Tabelle ohne nervige Tags oder Classes.
Jetzt hab ich aber keine Idee wie ich die angehangene HTML-Datei gut parsen kann.
Da es oft mehrere Zellen gibt, ist das col- und rowspan wichtig.
Ich würde die jetzt einfach nehmen und dann die </td> tags abzählen, bis ich dann den Abschnitt der Tabelle separiert habe und den dann einzeln bearbeiten kann.
Doch leider krieg ich das nicht hin, ich komm mit der Struktur von der Datei nicht klar.
Könnte jemand vielleicht ganz kurz reingucken und mir einen Tipp geben?

lg


Html Datei als Text, .html is hier ja verboten.. (txt, 13.77 KB)
Einloggen, um Attachments anzusehen!