Das Forentreffen 2018 findet am 20./21. April in Dresden statt. Weitere Infos hier
Zur Homepage des Deutschsprachige Xbase-Entwickler e. V.
Xbase++-Wiki des Deutschsprachige Xbase-Entwickler e. V.

HTML Datei in Einzelteile zerlegen

Vom Front-End bis SOAP.

Moderator: Moderatoren

Antworten
Elvis
Cut&Paste-Entwickler
Cut&Paste-Entwickler
Beiträge: 27
Registriert: Mi, 13. Dez 2006 11:00
Wohnort: Hamburg

HTML Datei in Einzelteile zerlegen

Beitrag von Elvis » Di, 06. Mai 2014 12:55

Hallo allerseits,

ich arbeite gerade an einem Projekt, wo ich Daten aus eine HTML Datei auslesen muß.
Leider fehlen bei den Table und div Tags, die ich benötige, jegliche id und namens Zuweisungen.

Ich habe mir also gedacht ich lese alle Tags in ein Array ein und arbeite mit einer Art koordinatensystem.

Jetzt ist nur meine Schwierigkeit wie bekomme ich die HTML Datei zerplückt.
Ich habe ein Programm (domdisplay) von Phil Idle endeckt, das das allem anschein nach kann, aber keine Ahnung ob man dort an den source kommt, da es noch in 1.82 kompiliert ist.

Hat jemand vielleicht erfahrung mit sowas oder kann mir einen Tipp geben?

Vielen Dank

Rene

Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 13765
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Kontaktdaten:

Re: HTML Datei in Einzelteile zerlegen

Beitrag von brandelh » Di, 06. Mai 2014 13:41

Falls du die Prof Sub hast, gibt es von Alaska code dazu ... HRF.ZIP (HTML Reflection Framework) oder so
Phil hat eigentlich immer den Quellcode rausgegeben, seine Dateien kann man hier finden:

:arrow: http://www.alaska-software.com/download ... ection=400
:arrow: http://www.xbwin.com/forum.php?ng=/%2Fn ... .resources
Gruß
Hubert

Benutzeravatar
Jan
Foren-Administrator
Foren-Administrator
Beiträge: 12298
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Kontaktdaten:

Re: HTML Datei in Einzelteile zerlegen

Beitrag von Jan » Di, 06. Mai 2014 13:52

Hubert,

auf der Alaska-Seite hatte ich auch schon nachgesehen. Da sind aber wirklich nur die PDF und die dll. Kein Code. Auch auf der ftp-Seite von Alaska nicht.

Und leider gilt das Gleiche für Pablos Seite ...

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.

Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 6797
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Kontaktdaten:

Re: HTML Datei in Einzelteile zerlegen

Beitrag von Tom » Di, 06. Mai 2014 13:59

Wenn es um eine konkrete HTML-Datei geht, die immer gleich aufgebaut ist, kann es sinnvoller sein, zeilenweise Strings zu analysieren. Ein allgemeines Tool wird man ohnehin kaum bauen können, wenn es um dynamische Inhalte geht.
Herzlich,
Tom

georg
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 1933
Registriert: Fr, 08. Feb 2008 21:29

Re: HTML Datei in Einzelteile zerlegen

Beitrag von georg » Di, 06. Mai 2014 14:22

Hallo,


an dieser Stelle möchte ich einmal den Begriff "Regular Expressions" in den Raum werfen.

Ich verwenden inzwischen überwiegend Regular Expressions (unter selfhtml.org gibt es eine allgemeinverständliche Einführung in das Thema), um Webseiten zu analysieren und bestimmte Inhalte zu extrahieren.

Von Phil Ide gibt es einen Wrapper, um die PCRE (Pearl Compatible Regular Expressions) Library auch unter Xbase++ nutzen zu können. Alaska stellt den Wrapper im Download-Bereich zur Verfügung.

Ach ja, fast hätte ich's vergessen: Regular Expressions werde ich in meinem Vortrag nach der Jahreshauptversammlung behandeln.
Liebe Grüsse aus der Eifel,

Georg

Elvis
Cut&Paste-Entwickler
Cut&Paste-Entwickler
Beiträge: 27
Registriert: Mi, 13. Dez 2006 11:00
Wohnort: Hamburg

Re: HTML Datei in Einzelteile zerlegen

Beitrag von Elvis » Di, 06. Mai 2014 16:32

Also vielen Dank erstmal für die schnellen Antworten.

Hubert, ja ich habe die Prof. Subscription und habe mir das HRF angesehen. Phil spricht allerdings in der Hilfe zum "domdisplay" von einer HRF2, die konnnte ich bisher auch nicht finden. Damit würde es wahrschienlich noch einfacher werden.

Tom, die Inhalte sind leider Dynamisch da komme ich nicht drumherum.

Ich werde mir das mit den PCRE mal ansehen.

Wenn jemand Zugang zu der Source von domdisplay oder HRF2 hat wäre natürlich am allerbesten.

Rene

Benutzeravatar
Armin
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 365
Registriert: Mo, 26. Sep 2005 12:09
Wohnort: 75331 Engelsbrand
Kontaktdaten:

Re: HTML Datei in Einzelteile zerlegen

Beitrag von Armin » Mo, 19. Mai 2014 9:51

Hallo Rene,
ja ich habe die Prof. Subscription und habe mir das HRF angesehen
damit sollte es doch gut funktionieren... Wenn Du Fragen hast, ich habe schon einiges damit gemacht.

Gruß, Armin

Elvis
Cut&Paste-Entwickler
Cut&Paste-Entwickler
Beiträge: 27
Registriert: Mi, 13. Dez 2006 11:00
Wohnort: Hamburg

Re: HTML Datei in Einzelteile zerlegen

Beitrag von Elvis » Mo, 19. Mai 2014 9:58

Hallo Armin,

ja ich habe es mir auch angesehen, aber es fehlt leider eine wichtige Funktion.
Es gibt die funktionen Tag bei Name und Tag bei ID.
Leider fehlt die Funktion Tag bei Type.

Wenn ich jetzt 10 Tabellen (<table>) in einer HTML Datei habe, ohne ID oder Name, kann ich per dem was ich im HRF gefunden habe, mit nicht die 7 Tabelle geben lassen.

Hast Du so einen Fall schon mal gehabt?
Bzw. hast Du mit HRF schon mal erfolgreich eine ganze HTML datei zerlegt bekommen?

Gruß

Rene

Benutzeravatar
Armin
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 365
Registriert: Mo, 26. Sep 2005 12:09
Wohnort: 75331 Engelsbrand
Kontaktdaten:

Re: HTML Datei in Einzelteile zerlegen

Beitrag von Armin » Di, 20. Mai 2014 10:28

Hallo Rene,

so sollten in aTable alle Tabellen stehen:

Code: Alles auswählen

oElem :=  oDocument:childFromTag( "body", .t. )
aTable := childtest(oDocument,oElem, aTable)


function childtest(oDocument,oElem,aTable)
local aChilds := {}
local i := 0

   aChilds := oElem:childList()

   for i := 1 to len(aChilds)
      if aChilds[i]:cHTMLTag == "table"
         aadd(aTable, aChilds[i])
      endif
      aTable := childtest(oDocument,aChilds[i], aTable)
   next

return aTable

Gruß, Armin

Elvis
Cut&Paste-Entwickler
Cut&Paste-Entwickler
Beiträge: 27
Registriert: Mi, 13. Dez 2006 11:00
Wohnort: Hamburg

Re: HTML Datei in Einzelteile zerlegen

Beitrag von Elvis » Do, 22. Mai 2014 9:08

Hallo Armin,

vielen Dank ich teste das mal aus.

Gruß

Rene

Antworten