# HTML mit AJAX auslesen



## simmyzoo (20. Jul 2012)

Hallo Java-Forum,

ich suche derzeit nach dem richtigen Ansatz mit dem es mir gelingen könnte den Quellcode eines HTML Dokument, das über AJAX aktualisiert wird, auszulesen und damit eine Datenbank aktuell zu halten. 

Ich habe schon einige Dinge gelesen über HtmlUnit und Selentium, jedoch schien dies noch nicht das Richtige zu sein. Für mich wäre erstmal wichtig, dass ich es schaffe den Quelltext mir so anzeigen zu lassen, wie es Firebug in Firefox tut und das Ganze dann abzuspeichern, um Werte aus dem Code auslesen zu lassen.
Jedoch fehlt mir momentan die Fachkenntnis um das richtige FrameWork oder die richtige Java-Klasse für diese Aufgabe heraus zu finden. Ich danke für jede Idee und jeden Vorschlag

MFG
Sim


----------



## simmyzoo (20. Jul 2012)

So ich schaff es nun mit diesem Quelltext:

```
try{
		URL url = new URL(seite);
		BufferedReader r = new BufferedReader(new InputStreamReader(url.openStream()));
		String line =null;
		while ((line=r.readLine())!=null)
			System.out.println(line);
		}
		catch(Exception e){
			System.out.println("Fehler: " + e);
		}
```

(den ich im Java-Forum gefunden habe) mir den Quelltext ausgeben zu lassen, das einzige Problem ist nun nur noch, dass ich so natürlich nicht die AJAX Protokolle handeln kann, so wie es Firebug erledigt, wenn mir da Jemand weiter helfen könnte, wäre ich echt super glücklich.


----------



## URLConnection (21. Jul 2012)

Wenn man nicht gerade ein Framework wie HTMLUnit oder ApacheCommons nutzen will ist URLConnection sicher schon die "beste" Wahl. Da Java seit Version6 auch eine JavaScript-Engine besitzt könnte man damit mal spielen, aber da gibt es mitlerweile Frameworks die das sehr gut umsetzen können.

Und grundsätzlich ist ein AJAX-Request auch nichts anderes als eine weitere Anfrage an den Server, nur das halt vom AJAX-Framework die "Hintergrundarbeit" versteckt wird.
Um also das zu erreichen was der AJAX-Request macht brauchst du nur z.B. mit WireShark auslesen was dieser an den Server sendet und dies selbst mit URLConnection zu machen.

Ist alles einfacher als du denkst und auch komplett ohne Frameworks nur mit der SE-API umsetzbar.


----------

