redirected html auslesen

Status
Nicht offen für weitere Antworten.

Svenman_1

Mitglied
Hallo!

Ich habe eine Frage:
Ich möchte gerne Informationen zu Filmen im Internet suchen können (von Wikipedia).
Dazu benutze ich die Auf gut Glück Suche von Ebay.
Ich bekomme aber den 403 Fehler statt der html seite!
Im Browser klappt die Umleitung, was muss ich ändern, damit das wie unten funktioniert?

Java:
String html="";
Sting t = "Van Helsing" //Beispiel
String lefturl = "http://www.google.de/search?hl=de&q=wikipedia+film+";
String righturl = "&btnI=Auf+gut+Gl%C3%BCck!&meta=";
java.net.URL anfrage = new java.net.URL(this.lefturl + t + this.righturl);
is = anfrage.openStream(); //Hier wird die Exception geworfen!

java.io.DataInputStream dis = new java.io.DataInputStream(new java.io.BufferedInputStream(is));

while((s = dis.readLine())!= null)
   html+=s;

html+="\n\n";


Danke im Vorraus!
 
T

Toni55

Gast
Nutze eine HttpClient wie z.B. xLightweb (xLightweb) oder Apache commons (HttpClient - HttpClient Home). Solche Clients führen intern einen redirect durch, falls konfiguriert.

Beispiel:
Java:
HttpClient httpClient = new HttpClient(); 
httpClient.setFollowsRedirect(true);
	
IHttpResponse response = httpClient.call(new GetRequest(myUrl));
 

Mani

Mitglied
Hallo liebes Forum,

hab versucht den HTTPClient xLightWeb für einen Redirect zu nutzen:

Java:
import org.xlightweb.*;
import org.xlightweb.client.*;
import org.xlightweb.server.*;

public class test {

public static void main ( String [] args)
{

 HttpClient httpClient = new HttpClient // 1, wobei hier Zeile 16 im Code
 httpClient.setFollowsRedirect(true);
 IHttpResponse response = httpClient.call(new GetRequest("http://mydomain.org/index.php?action=getStatusMessage&uid=2");

}

}

Zweck: Mit dem Aufruf der Action getStatusMessage wird über den Redirect ein Wert zurückgeliefert, den ich dann gerne auslesen würde, in diesem Fall

http://mydomain.org/index.php?action=getStatusMessage&uid=2
=>
http://mydomain.org/index.php?action=showStatusMessage&value=Ort

Wobei ich dann einen Wert aus einer mySQL DB mit dem Wert value = Ort zurückbekomme , den ich dann gerne auslesen würde.

Allerdings scheitert das Ganze schon in der Zeile // 1

Ich habe in Eclipse das xLightWeb-Package als external Jar in den Build-Path miteingebunden.

Ausgabe von Eclipse beim Run:

Exception in thread "main" java.lang.NoClassDefFoundError: org/xsocket/connection/IConnectionPool
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.lang.security.SecureClassLoader.defineClass(Unknown Source)
...
at mypackage.test.main(test.java: 16)
Caused by: java.lang.ClassNotFoundException: org.xsocket.connection.IConnectionPool
at java.net.URLClassLoader$1.run(Unknown Source)
...
... 13 more


Hab ich vergessen irgendwelche Bibliotheken einzubinden?

Vielen Dank im Voraus
 

Mani

Mitglied
Super, danke für die schnelle Hilfe

Jetzt stehe ich vor dem Problem des Auslesens der Variablen aus dem Redirect:

http://mydomain.org/index.php?action...sMessage&uid=2
nach
http://mydomain.org/index.php?action...sage&value=Ort

Im Browser funktioniert der Redirect. Wenn ich aber nun über folgenden Code versuche die Variable value auszulesen, gibt er mir null zurück.

Java:
import org.xlightweb.*;
import org.xlightweb.client.*;
import org.xlightweb.server.*;
 
public class test {
 
public static void main ( String [] args)
{
 
 HttpClient httpClient = new HttpClient 
 httpClient.setFollowsRedirect(true);
 IHttpResponse response = httpClient.call(new GetRequest("http://mydomain.org/index.php?action=getStatusMessage&uid=2");
 String value = (String) response.getAttribute("value");

}
 
}

Ich habe auch schon über

Java:
Set <String> s = response.getAttributeNameSet();
Iterator it = s.iterator();
while (it.hasNext())
{
 System.out.println(it.next());
}

versucht mir die Variablen auszugeben, allerdings ist die Menge leer.

Habe ich eine falsche Methode zum zerstückeln benutzt?
 
Zuletzt bearbeitet:
T

Toni55

Gast
Was kommt den als Antwort zurück? -> mimeType. Gibt doch den response einfach mal über aus
Java:
System.out.println(response.toString())

Du kannst auch die Header der Response mittels
Java:
response.getHeader(..)
zugreifen, auf den Body mittels
Java:
getBlockingBody().readXXX()

Falls du als Antwort MimeType 'application/x-www-form-urlencoded' bekommst kannst du den response konvertieren
Java:
...
FormURLEncodedBody body = new FormURLEncodedBody(response.getBlockingBody());
String param = body.getParameter(...);
 

Mani

Mitglied
Ich würde eigentlich nur gerne die -neue- URL auslesen.

Also entweder als String und dann parsen, oder wenn das möglich, die mitgelieferten Variablen direkt rauslesen.

Quasi

Java:
 HttpRequest a = new GetRequest("http://mydomain.org/index.php?action...sMessage&uid=2");
 System.out.println(a.toString);

nur mit der redirected URL.

Leider gibt das das IHttpResponse irgendwie nicht her.
 
T

Toni55

Gast
Um die redirect URL auszulesen muss du redirect deaktivieren. Die Redirect URL steht dann im Location header des response
Java:
String redirectURL = response.getHeader("location");
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Html Auslesen Netzwerkprogrammierung 6
D WebSocket Server mit HTML Client und Java Server Netzwerkprogrammierung 5
G seite nach posten eines html-forms laden Netzwerkprogrammierung 0
K HTTP Mit Java HTML Codeauslesen um damit zu arbeiten Netzwerkprogrammierung 7
B HTML mit Webserver und Datenbank verbinden Netzwerkprogrammierung 2
K Probleme bei HTML-Mail-Abruf mit IMAP bei 1und1 Netzwerkprogrammierung 2
C Gerenderte Website nach der ausführung von JavaScript als HTML Code aus lesen Netzwerkprogrammierung 4
Z HTTP HTML Element auslesen in Java Netzwerkprogrammierung 1
J Daten von einem HTML-Textfeld abrufen Netzwerkprogrammierung 3
J Json von Html request einlesen Netzwerkprogrammierung 0
X Einfach Server der HTML img Tags austauscht Netzwerkprogrammierung 1
P nanoHttp upload.html page lädt nicht Netzwerkprogrammierung 4
Xendarii HTTP Zeilenumbrüche aus HTML-Textarea entfernen Netzwerkprogrammierung 10
S HTML mit AJAX auslesen Netzwerkprogrammierung 2
Mike90 Mehspaltige HTML Tabelle parsen Netzwerkprogrammierung 3
S HTTP Ausgabe von Java-Inhalten in HTML Netzwerkprogrammierung 6
D JavaMail: HTML Code einer Mail Netzwerkprogrammierung 9
R HTTP Post HTML Netzwerkprogrammierung 5
Geese HTML Quelltext auslesen ergibt -null- Netzwerkprogrammierung 2
D HTTP html Bildreferenz in responseBody() schreiben Netzwerkprogrammierung 2
B HTTP HTML-Formular aus Java heraus befüllen und bedienen Netzwerkprogrammierung 3
I HTTP Post aus html in Java einlesen - Problem Netzwerkprogrammierung 2
I HTTP Post aus html in Java einlesen - Problem Netzwerkprogrammierung 6
R HTML in FileWriter schreiben Netzwerkprogrammierung 5
M Java-Programm als Webserver erzeugt HTML Netzwerkprogrammierung 8
U2nt Texte bzw. Attribute aus HTML etc. bekommen Netzwerkprogrammierung 2
B HTML meets Servlet Netzwerkprogrammierung 6
H HTTP Einloggen auf einer HTML (php) Seite Netzwerkprogrammierung 6
L Passwort + HTML und PHP Netzwerkprogrammierung 9
F Welchen HTML Parser soll ich nehmen? Netzwerkprogrammierung 3
B HTML Formularfelder erkennen und ausfüllen Netzwerkprogrammierung 3
A html - E-mail - Bilder Netzwerkprogrammierung 4
N HTML-Übertragung im lokalen Netzwerk mit Java - wie? Netzwerkprogrammierung 6
S Mittels Java XML abfragen und nicht die Ausgabe-HTML-Datei Netzwerkprogrammierung 5
H HTML-Mails mit JavaMail API Netzwerkprogrammierung 3
M Wie läd man eine HTML Seite in Java runter Netzwerkprogrammierung 2
Z HTML sent by doPost Netzwerkprogrammierung 2
T verbindung zu skript (wie html-formular) Netzwerkprogrammierung 2
A HTML code auslesen klappt nicht ganz Netzwerkprogrammierung 3
M Quellcode einer HTML Seite erhalten Netzwerkprogrammierung 2
M html Code darstellen Netzwerkprogrammierung 2
flashfactor Frage zu HTML-Response Netzwerkprogrammierung 4
T Html-Source über URL in einen String speichern? Netzwerkprogrammierung 16
G Java Chat mit HTML Cleint Netzwerkprogrammierung 3
C POST-Parameter aus HTML-Script lesen Netzwerkprogrammierung 1
x46 byte[] über BufferedReader auslesen Netzwerkprogrammierung 18
E Socket Parameter über Sockets übergeben und auslesen ! Netzwerkprogrammierung 5
J WLAN-Signalstärke in dbm auslesen Netzwerkprogrammierung 1
C IFrame mit java auslesen Netzwerkprogrammierung 1
DeathsGun Zeile von Streamcloud auslesen Netzwerkprogrammierung 1
D Webseite(mit JavaScript-Element) mit Java auslesen Netzwerkprogrammierung 0
J Webformular auslesen Netzwerkprogrammierung 2
D Einfache Verbindung zu Linux Server und Datei auslesen Netzwerkprogrammierung 13
B XMLRPC-Schnittstelle. Einzelne Felder aus dem Object auslesen Netzwerkprogrammierung 2
F Daten aus Internetseiten auslesen Netzwerkprogrammierung 56
precoc IP Auslesen Netzwerkprogrammierung 4
S HTTP Pakete Auslesen Netzwerkprogrammierung 22
B Authentifikation und anschliesendes auslesen von JSON Netzwerkprogrammierung 2
M lokale Benutzer auslesen Netzwerkprogrammierung 28
H Verzeichnis auf Server auslesen Netzwerkprogrammierung 13
S Bluetooth -Gerätename -Geräteadresse auslesen Netzwerkprogrammierung 4
M Proxy Einstellungen auslesen Netzwerkprogrammierung 2
B FTP Datei auslesen ohne einloggen möglich? Netzwerkprogrammierung 19
A HTTP Binärdaten über PHP-Skript in Datenbank schreiben bzw auslesen Netzwerkprogrammierung 2
N Systemeinstellung Proxyserver auslesen Netzwerkprogrammierung 2
V Quelltaxt einer Website auslesen funktioniert nicht Netzwerkprogrammierung 2
E HTTP Problem beim Auslesen von Websiten Netzwerkprogrammierung 6
M IP-Auslesen und ändern Netzwerkprogrammierung 25
B Globale IP-Adresse auslesen - Java Applet Netzwerkprogrammierung 2
S Port auf einer bestimmten IP-Adresse auslesen? Netzwerkprogrammierung 6
S website auslesen schlägt fehl Netzwerkprogrammierung 20
L Body eines http Request auslesen Netzwerkprogrammierung 2
P URL Parameter auslesen Netzwerkprogrammierung 5
G Kryptische Zeichen beim Auslesen einer Website Netzwerkprogrammierung 11
S Subnetzaddresse auslesen Netzwerkprogrammierung 34
F Timestamp aus IP-Header auslesen Netzwerkprogrammierung 2
L Größe einer Datei auslesen die im Netz liegt Netzwerkprogrammierung 4
S Mehrere Attachments mit JavaMail API auslesen Netzwerkprogrammierung 3
A SSL Zertifikat - modulus auslesen und vergleichen Netzwerkprogrammierung 1
F URL geordnet auslesen Netzwerkprogrammierung 3
E ordnerberechtigungen auslesen Netzwerkprogrammierung 2
P Textdateien aus Oracle-DB mittels Java auslesen und öffnen Netzwerkprogrammierung 7
G push clientseitig auslesen Netzwerkprogrammierung 5
D Daten, die mit PHP erzeugt werden, mit Java auslesen Netzwerkprogrammierung 8
C PCAP Datei auslesen Netzwerkprogrammierung 8
M Rechner einer Domäne auslesen? Netzwerkprogrammierung 3
J Active Directory mit Java auslesen Netzwerkprogrammierung 1
M Öffentliche IP auslesen Netzwerkprogrammierung 13
S Verzeichnis auslesen (FTP Jakarta Commons Net) Netzwerkprogrammierung 2
L netzwerkkarte traffic auslesen Netzwerkprogrammierung 15
T Quelltext einer Website auslesen Netzwerkprogrammierung 3
C JSP Parameter auslesen Netzwerkprogrammierung 1
J Zeilenweises auslesen aus einer Datei über Server Netzwerkprogrammierung 6
J Client/Server vorhandene Textdatei auslesen Netzwerkprogrammierung 14
C IP adresse anhand einer domain adresse auslesen / ermitteln Netzwerkprogrammierung 3
D SOAP Message abfangen und auslesen Netzwerkprogrammierung 3
G IP auslesen, ändern Netzwerkprogrammierung 8
F IP-Adresse auslesen Netzwerkprogrammierung 7
N TCP Stream auslesen Netzwerkprogrammierung 7
D Bekomme Dummyspace beim Internetseiten auslesen Netzwerkprogrammierung 2

Ähnliche Java Themen

Neue Themen


Oben