# Quellcode einer HTML Seite erhalten



## meck (22. Feb 2006)

Hi.
Ich habe folgendes Problem.
Ich möchte den Quellcode einer HTML Seite parsen.
Dazu müsste ich mir zunächst einmal den Quellcode dieser Seite besorgen.
Das ist alles soweit kein Problem, auch mit Cookie Verwaltung usw. alles kein Problem.

Nur werden einige Teile der Seite dynamisch mittels javascript nachgeladen, und genau dies sind die für mich interessanten Daten. Hat jemand eine Idee, wie ich an den entsprechenden Code komme?

Danke schon mal und Grüße
Daniel


----------



## sebastian4gold (23. Feb 2006)

Also, da giebt es zwei Möglichkeiten.
1. Du könntest mittels Regex die betreffenden JS Aufrufe finden und so deren Ziel einlesen.
    Also angenommen, es ist eine Seite, bei der gewisse Wörter bei mouseOver einen
    Hilfetext mittels Ajax nachladen, der in einem Layer erscheint, dann kannst du
    ja ganz leicht damit Arbeiten.
    Also z.B. onmoueover="showHelpFor('Fernsehen');"
    und die Nachlade Funkton könnte so aussehen:
    funktion showHelpFor(helpstr) {
    ....load("/helpbox.php?help=" + helpstr); ......

    Dann kannst du ja alle onmouseover per regex finden, und die Seite xxx.de/helpbox.php?help=<id>
    laden und so hast du deren Inhalt.

2. Die noch schwierigere:
Du baust mit (Mozilla) Rhino (ein JS Interpret in Java geschrieben) einfach alles nach.
So kannst du einen "virtuellen" Besuch auf der Seite simulieren und testen was wann wie passiert. (Das geht dann mit allen Seiten und ist nicht auf eine spezielle Seite festgelegt)

________________________________________________________
Hoffe du kommst klar,
Sebastian


----------



## meck (24. Feb 2006)

Hi.
Danke für deine Antwort. Ich habe ein Sourceforge Projekt namens "htmlunit" jetzt mal ausgecheckt. Das ist zwar eigentlich dazu gedacht Webseiten zu testen, aber für meine Zwecke scheint es bisher zu gehen, da auch ein JS-Interpreter mit an Board ist. 
Falls ich damit doch Probleme bekomme, werde ich mal deine beiden Varianten ausprobieren...
Danke nochmal.
Gruß Daniel


----------

