Redirect, Login und Download bei Rapidshare.com

Status
Nicht offen für weitere Antworten.

2nerd4u

Mitglied
Hallo erst mal,
ich bin neu in dem Forum und dies ist mein erster Beitrag. Wäre cool wenn mir jemand helfen kann.
Also mein Problem ist folgendes:

Ich möchte bei Rapidshare.com Daten runterladen, per Java Applikation.
Wie man URLs lädt weiß ich. Mein Problem ist jedoch, dass wenn ich die direkte DownloadURL (wie z.B.: "http://rapidshare.com/files/19017288/blur.part09.rar") angebe, er mir die Login-Seite lädt und sie als blur.part09.rar speichert.
Mit dem Debug Modus von wget hab ich auch gesehen wie ich eine das ganze Gestalten muss.

wget sendet folgenden http Request:
Code:
---request begin---
GET /files/19017288/blur.part09.rar HTTP/1.0                 //Wichtig!!
User-Agent: Wget/1.10.2
Accept: */*
Authorization: Basic XXXXXXXXXXXXXXXX
Host: rapidshare.com
Connection: Keep-Alive
---request end---

und erhält daraufhin folgendes zurück:

Code:
---response begin---
HTTP/1.1 302 Moved Temporarily                                   //Wichtig!!
P3P: CP="ALL DSP COR CURa ADMa DEVa TAIa PSAa PSDa IVAa IVDa CONa TELa OUR STP UNI NAV STA PRE"
Date: Fri, 18 May 2007 08:11:23 GMT
Connection: close
Accept-Ranges: bytes
Location: [url]http://rs125tl2.rapidshare.com/files/19017288/blur.part09.rar[/url]  //Wichtig!!
Content-Length: 0

---response end---

wie kann ich das mit Java realisieren?

Ich habe dazu auch schon was gefunden:
Code:
public class HeaderRequest {
    public static void main (String[] args){
	try {
        // Create a URLConnection object for a URL
        URL url = new URL("http://rapidshare.com/");
        HttpURLConnection conn = (HttpURLConnection) 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.
        for (int i=0; ; i++) {
            String headerName = conn.getHeaderFieldKey(i);
            String headerValue = conn.getHeaderField(i);
            System.out.println(headerName + ": " + headerValue);
            if (headerName == null && headerValue == null) {
                // No more headers
                break;
            }
            if (headerName == null) {
                // The header value contains the server's HTTP version
            }
        }
    } catch (Exception e) {
    } 
    }
}
Rapidshare.com sendet mir dann leider nur dies:
Code:
null: HTTP/1.1 200 OK
P3P: CP="ALL DSP COR CURa ADMa DEVa TAIa PSAa PSDa IVAa IVDa CONa TELa OUR STP UNI NAV STA PRE"
Date: Fri, 18 May 2007 08:21:37 GMT
Connection: close
Accept-Ranges: bytes
Content-Type: text/html; charset=ISO-8859-1
Cache-Control: no-cache
Content-Length: 4856
null: null

Wäre über jeden Tipp dankbar.
Wie erstllen ich so einen CustomHttpRequest?


Mit freundlichen Grüßen
2nerd4u :wink:
 

Murray

Top Contributor
In deinem Code fehlt ja zumindest der Name der Datei, der bei WGET mit übertragen wird. Daher unterscheidet sich auch der Response: du bekommst nur die Homepage (und daher den Status OK).

Versuch mal
Code:
URL url = new URL("http://rapidshare.com/files/19017288/blur.part09.rar");
 

2nerd4u

Mitglied
Das habe ich auch schon versucht... :(
Hätte ich villeicht besser formulieren können.
Die Rückgabe vom Server sieht für die vollständige URL (http://rapidshare.com/files/19017288/blur.part09.rar) leider genauso aus...


Code:
null: HTTP/1.1 200 OK
P3P: CP="ALL DSP COR CURa ADMa DEVa TAIa PSAa PSDa IVAa IVDa CONa TELa OUR STP UNI NAV STA PRE"
Date: Fri, 18 May 2007 13:03:56 GMT
Connection: close
Accept-Ranges: bytes
Content-Type: text/html; charset=ISO-8859-1
Cache-Control: no-cache
Content-Length: 4855
null: null
 

Murray

Top Contributor
Dann fällt ja noch auf, dass beim WGET ein Authentifizierungs-Header mitgeschickt wird. Dazu kannst du - nach dem openConnection, aber vor dem ersten getHeaderFieldKey - explizit einen entsprechenden Header setzen:
Code:
conn.setRequestProperty("Authorization", "Basic Mm5lcmQ0dTptYXJpdXM=");
 

2nerd4u

Mitglied
:) Danke schon mal an alle!
Ich habs jetzt hinbekommen:
Code:
String userpass = username + ":" + password;
String base64 = "Basic " +
        new sun.misc.BASE64Encoder().encode( userpass.getBytes() );
URLConnection conn = url.openConnection();
conn.setDoInput( true );
conn.setRequestProperty( "Accept", "*/*");
conn.setRequestProperty( "Authorization", base64 );
conn.setRequestProperty( "Host", url.getHost());
conn.setRequestProperty( "Connection", "Keep-Alive");
conn.connect();
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
G Http Client mit Redirect Enabled Netzwerkprogrammierung 2
P Jenkins Login per Java Download Manager Netzwerkprogrammierung 15
T HTTP JSoup Automatic Website Login Netzwerkprogrammierung 1
Q-bert Link zugang ohne login sperren. Netzwerkprogrammierung 1
S Jsoup Login auf Schulserver Netzwerkprogrammierung 3
T Netzwerk Login Felder ansprechen Netzwerkprogrammierung 1
M HTTPS Login & etwas posten Netzwerkprogrammierung 0
M Sicheres Login-System für App implementieren Netzwerkprogrammierung 6
K Login Shibboleth Netzwerkprogrammierung 0
L Mit Java über PHP in MySQL anmelden (Login script) Netzwerkprogrammierung 3
N HTTP Apache 4.2.1 HttpClient 302 nach Login und auf den weiteren Seiten. Netzwerkprogrammierung 5
D HTTP Frage zu Login & Session ID Netzwerkprogrammierung 5
J Login Bereich auf jeder Seite Netzwerkprogrammierung 4
G Cookie Verwaltungs Problem nach Login auf InetSeite (Wo utma-Cookie?) Netzwerkprogrammierung 18
I HTTP S - Zertifikate+Cockies für Form-basierten Login Netzwerkprogrammierung 2
S Automatischer Login auf einer Webseite Netzwerkprogrammierung 12
E Webseite mit Login laden Netzwerkprogrammierung 5
C Login ohne Erfolg Netzwerkprogrammierung 2
xDarkSunx Hilfe Chat Login Netzwerkprogrammierung 7
T Java => Login mit MySQL Netzwerkprogrammierung 10
M Login mit HtmlUnit Netzwerkprogrammierung 6
K Login via apache httpclient Netzwerkprogrammierung 4
N Login mit Roboter Netzwerkprogrammierung 16
S HTTP Login mit CAS Authentisierung über SSL Netzwerkprogrammierung 2
M Servlet als Login Netzwerkprogrammierung 20
J Socket Doppel Login geht nicht Netzwerkprogrammierung 11
N Login auf Website Netzwerkprogrammierung 11
H HTTP Login mit POSTMethod und httpClient Netzwerkprogrammierung 5
K HTTP Login Internetseite Netzwerkprogrammierung 17
lordcarlos HTTP Apache HttpClient, post und login. Netzwerkprogrammierung 2
G ftp login Netzwerkprogrammierung 10
L Web Login Netzwerkprogrammierung 3
K Bad Request nach Form Login in Jakarta HttpClient Netzwerkprogrammierung 4
H Login Chatsystem Netzwerkprogrammierung 5
lebenlechzer Login per Telnet auf Router Netzwerkprogrammierung 2
N icq login Netzwerkprogrammierung 16
M Problem: connection abbrechen und login erkennen Netzwerkprogrammierung 2
C Login bei einem php-script Netzwerkprogrammierung 2
J Datei Download vom Server Netzwerkprogrammierung 8
T Download überprüfung... Netzwerkprogrammierung 9
S HTTP Download von Google-URL mit Parametern Netzwerkprogrammierung 1
S download PDF Netzwerkprogrammierung 2
V Datei Download Fenster Netzwerkprogrammierung 9
R Apache HttpClient File Download? Netzwerkprogrammierung 3
K HTTP Eigener Http Response für Datei-Download Netzwerkprogrammierung 4
F HTTP HTTP-Download: Dateien in einem Verzeichnis ermitteln Netzwerkprogrammierung 8
T Download Programm - Download endet vorzeitig (bricht ab) Netzwerkprogrammierung 11
D HTTP Download - Skript im Weg Netzwerkprogrammierung 4
C Fehler bei PDF-Download Netzwerkprogrammierung 5
B FTP *.class download Netzwerkprogrammierung 2
eLogic Download eines Links Netzwerkprogrammierung 2
Dit_ FTP Download | "PassiveMode"-Socket öffnen Netzwerkprogrammierung 4
B HTTP Audio-Download per Direktlink Netzwerkprogrammierung 4
eLogic Download aus Internet Netzwerkprogrammierung 18
M Download von Webseite Netzwerkprogrammierung 4
A RMI Fortschritt bei Up/Download anzeigen Netzwerkprogrammierung 6
T Up- und Download mit https Netzwerkprogrammierung 14
A HTTP Download einer Datei mit "Statistiken" Netzwerkprogrammierung 2
B HTTP PDF Servlet download vom Server zum Client Netzwerkprogrammierung 3
Ollek Download einer Datei durch SFTP mit Java Netzwerkprogrammierung 12
P Name der Download-Datei ermitteln Netzwerkprogrammierung 8
Schandro Download von FTP Server mit maximal Geschwindigkeit Netzwerkprogrammierung 2
P HTTP Problem beim Download von einer Datei Netzwerkprogrammierung 4
ModellbahnerTT Download progress Netzwerkprogrammierung 4
D FTP Download Netzwerkprogrammierung 5
N Video download Netzwerkprogrammierung 4
hdi Webseite auf Download-Links prüfen und Download starten? Netzwerkprogrammierung 7
C Download-Fortschritt wird falsch angezeigt. Netzwerkprogrammierung 2
E Größe der Datei vor Download ermitteln Netzwerkprogrammierung 3
B FTP - Verzeichnis Download Netzwerkprogrammierung 3
A Download-Client Netzwerkprogrammierung 6
A download programm Netzwerkprogrammierung 2
K http-download Netzwerkprogrammierung 12
L file upload / download über http Netzwerkprogrammierung 5
M Download über URL Netzwerkprogrammierung 7
B knacken bei download von mp3 datei Netzwerkprogrammierung 2
N Download HTTP .php-Seite mit Anmeldung Netzwerkprogrammierung 5
I rmi und download von klassen Netzwerkprogrammierung 12
M Download-Manager in System/Browser einbinden Netzwerkprogrammierung 11
G file download über https mit p12 Zertifikat Netzwerkprogrammierung 4
P Download funtioniert nicht richtig. Netzwerkprogrammierung 2
M FTP Verbindung und download von *.txt Netzwerkprogrammierung 6

Ähnliche Java Themen

Neue Themen


Oben