Java INternetseite aufrufen
lima-city → Forum → Programmiersprachen → Java
agent
all
aufruf
auslese
code
edition
first
gecko
header
host
http
image
list
platzhalter
server
setzen
standard
text
url
windows
-
Ich will eine Seite aufrufen, und danach den Header sowie den html-quelltext der rückgabeseite auslesen.
Den Aufruf mache ich mit:
URL url = new URL(\"http://www.xxx.de/seite.php\"); URLConnection conn = url.openConnection(); // List all the response headers from the server. // Note: The first call to getHeaderFieldKey() will implicit send // the HTTP request to the server. boolean first = false; String header = \"\"; header += \"GET /seite.php HTTP/1.1\" + (char) 0x0d + (char) 0x0a; header += \"Host: www.xxx.de\" + (char) 0x0d + (char) 0x0a; header += \"User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.8.1.12) Gecko/20080201 Firefox/2.0.0.12\"+ (char) 0x0d + (char) 0x0a; header += \"Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5\" + (char) 0x0d + (char) 0x0a; header += \"Accept-Language: de-de,de;q=0.8,en-us;q=0.5,en;q=0.3\" + (char) 0x0d + (char) 0x0a; header += \"Accept-Encoding: gzip,deflate\" + (char) 0x0d + (char) 0x0a; header += \"Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7\" + (char) 0x0d + (char) 0x0a; header += \"Keep-Alive: 300\" + (char) 0x0d + (char) 0x0a; header += \"Connection: keep-alive\" + (char) 0x0d + (char) 0x0a; header += \"Referer: http://www.xxx.de/seite.php\" + (char) 0x0d + (char) 0x0a + (char) 0x0d + (char) 0x0a; conn.setDoOutput(true); OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream()); wr.write(header); wr.flush();
Aber manchmal hängt die Virtualmachine vor meinen header noch selbst einen teil, sodass es gesamt etwa so aussieht:
IKOI9E@H@xw!N.&PGZPPOST /seite.php HTTP/1.1
User-Agent: Java(tm) 2 SDK, Standard Edition v1.6.0_02 Java/1.6.0_02
Host: www.xxx.de
Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2
Connection: keep-alive
Content-type: application/x-www-form-urlencoded
Content-Length: 503
GET /seite.php HTTP/1.1
Host: www.xxx.de
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.8.1.12) Gecko/20080201 Firefox/2.0.0.12
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Language: de-de,de;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Referer: h\'ttp://www.xxx.de/seite.php
wie kann ich das verhindern?
Beitrag geändert: 10.3.2008 9:57:15 von grizzlybaer -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Warum rufst du eigentlich write auf? Um die Platzhalter zu ersetzen?
Ich hab das zwar noch nie gemacht, aber musst du setDoOutput auf true haben,
damits funktioniert? Wenn nicht, dann würde ich versuchen,das auf false zu setzen.
Ansonsten kann ich leider nicht helfen.. -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage