get HTTP Headers

oldshoe

Bekanntes Mitglied
Ich versuche die HTTP Headers auslesen, die mir z.B. mit dem FirefoxPlugIn Live HTTP Headers angezeigt werden. Aber irgendwie bekomme ich mit meinem momentanen Ansatz nicht alle. Hat jemand eine Idee?

Java:
private void getHeaders() throws IOException {
		System.out.println("...start");
		URL url = new URL("http://www.sennheiser.com/sennheiser/home_de.nsf/root/private_headphones_audiophile-headphones_500319");
		URLConnection conn = url.openConnection();

		for (int i = 0;; i++) {
			String name = conn.getHeaderFieldKey(i);
			String value = conn.getHeaderField(i);
			if (name == null && value == null) {
				break;
			}
			if (name == null) {
				System.out.println("Server HTTP version, Response code:");
				System.out.println(value);
				System.out.print("\n");
			} else {
				System.out.println(name + "=" + value);
			}
		}

	}
 

oldshoe

Bekanntes Mitglied
Ich glaube alle Request die durch javascript erzeugt werden fallen schon mal runter. Die muss man doch irgendwie abfangen können.
 

Atze

Top Contributor
welche header brauchst du denn? die des ersten requests hast du ja alle, oder? der rest sind requests für bilder, flash-geschichten usw. brauchst du die auch alle?
 
D

Dow Jones

Gast
Ich glaube alle Request die durch javascript erzeugt werden fallen schon mal runter. Die muss man doch irgendwie abfangen können.

Ähm - man verbessere mich wenn ich mich irre (habe mit URLConnection bisher noch nie was gemacht), aber er würde mich sehr wundern wenn bei deinem Codeschnipsel überhaupt weitere Requests erzeugt werden. So eine Connection sorgt doch lediglich für den Transport von Request und Response, ohne sich darum zu kümmern was für Daten übertragen werden. Und dementsprechend wird ein übertragenes HTML-Dokument auch nicht von URLConnection interpretiert, woraus folgt, das auch keine weiteren Requests (durch Bilder, Javascript, Flash oder was auch immer) stattfinden. Du müsstest schon die komplette Response einlesen und diese dann selber interpretieren um herauszufinden welche zusätzlichen Inhalte die Webseite nachladen möchte (und dann natürlich für jedes Object auch wieder einen einzelnen Request zum Server schicken).

Je nach dem was du schlußendlich vor hast könnten folgende Bibliotheken für dich interessant sein:

- HtmlCleaner Project Home Page ist eine Bib die html nach xhtml wandelt und auch einfachen Zugriff darauf mittels XPath bereitstellt. Zum Auffinden von Links u.ä. in einer Webseite reicht das völlig

- HtmlUnit, JRex etc. sind "Browser ohne GUI", also dafür gedacht Html zu interpretieren ohne eine grafische Ausgabe zu erzeugen. Da kannst du dich mit Sicherheit irgendwo einhängen und die für dich interessanten Daten abfangen

- mit JDIC kannst du den Internet Explorer (und andere Browser) in deine Javaprogramme einbinden. Spätestens der sollte die Webseiten vollständig interpretieren können. Allerdings weiss ist jetzt nicht inwieweit der IE dir das auch mitteilt, welche Requests er gerade raushaut. Naja, notfalls musst du dir eben einen Proxy schreiben, dann bekommste alles mit. :)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Rest- Api mit HTTP BASIC Authentication Java Basics - Anfänger-Themen 16
L Webseite aufrufen (HTTP) Java Basics - Anfänger-Themen 8
P Maven-Dependencies (package org.apache.http.nio does not exist) Java Basics - Anfänger-Themen 6
S XML mittels HTTP Get Anfrage Java Basics - Anfänger-Themen 4
W Netwerkprogrammierung und Http Server Java Basics - Anfänger-Themen 10
R HTTP-Links in Java Class finden Java Basics - Anfänger-Themen 3
P Http Header, Http Proxy Java Basics - Anfänger-Themen 19
W HTTP-Stream auf Ajax umbauen Java Basics - Anfänger-Themen 7
F Http Post von mehreren Daten Java Basics - Anfänger-Themen 5
K URL ohne http:// Java Basics - Anfänger-Themen 8
F HTTP Get Queue Java Basics - Anfänger-Themen 7
J HTTP Request auf eine PHP Session Java Basics - Anfänger-Themen 1
E HTTP Client - Login durchführen? Java Basics - Anfänger-Themen 4
T Input/Output HTTP 403 aber im Browser gehts Java Basics - Anfänger-Themen 2
G Kraken HTTP Sniffer: ExceptionInInitializerError (Nutzt JNI) Java Basics - Anfänger-Themen 2
L Methodenzerlegung HTTP Java Basics - Anfänger-Themen 4
S HTTP Adresse von offenem Browserfenset einlesen Java Basics - Anfänger-Themen 6
C HTTP POST-Request Java Basics - Anfänger-Themen 3
G http-Port beim Apache Tomcat ändern Java Basics - Anfänger-Themen 1
G HTTP Server Java Basics - Anfänger-Themen 2
S HTTP Request Umlaut Problem Java Basics - Anfänger-Themen 3
N Http-Request : Google Suche Java Basics - Anfänger-Themen 6
G http-Request auf Apache Tomcat Java Basics - Anfänger-Themen 13
G HTTP Body? Java Basics - Anfänger-Themen 4
A HTTP-Request Java Basics - Anfänger-Themen 15
K Problem mit javax/servlet/http/HttpServletRequest.java Java Basics - Anfänger-Themen 2
J Mehrdimensionales Array im Http-Request Java Basics - Anfänger-Themen 5
M Http Redirect Java Basics - Anfänger-Themen 5
M HTTP-Anfragen und Socket Java Basics - Anfänger-Themen 2
T mit einem string der form"[url]http://www.*.*/*"[/url] datei Java Basics - Anfänger-Themen 3
J HTTP Request Auslösen Java Basics - Anfänger-Themen 2
P HTTP-Request Parameter übergeben Java Basics - Anfänger-Themen 8
G http client Java Basics - Anfänger-Themen 4

Ähnliche Java Themen

Neue Themen


Oben