The new rapidshare.com login is as follows:
/* Define Variables */
HttpURLConnection http;
DataOutputStream WriteStream;
BufferedReader Buffer;
String Data="";
String UserInfo="premiumlogin=1&accountid=USERORNICK&password=PASSWORD"; // Wow...now we can ACTUALLY use the nick names...thank god!
// End define
try
{
http = (HttpURLConnection)new URL("http://rs455.rapidshare.com/cgi-bin/premium.cgi").openConnection(); // The server SHOULD be changeable in the settings...
http.setRequestMethod("POST");
http.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
http.setRequestProperty("Host", "rs440.rapidshare.com");
http.setRequestProperty("Content-Length",String.valueOf(UserInfo.length()));
// We want do in and out buffers
http.setUseCaches (false);
http.setDoInput(true);
http.setDoOutput(true);
try
{
// Write to the buffer
WriteStream = new DataOutputStream(http.getOutputStream());
WriteStream.writeBytes(UserInfo);
WriteStream.flush();
WriteStream.close();
String CookieString = http.getHeaderField("Set-Cookie");
} catch (IOException netE)
{
}
} catch(IOException e)
{
}
Now, you just need to parse the CookieString and the pattern is
enc=([a-zA-Z0-9]+)\;
This NEVER changes, so instead of every connection having it login, only login once (when its setup) and then only if the user is invalid...Same checks apply as before too...
Hope I helped in some way...I'm new to Java but I felt compelled to help this great program!
Edited 1 time(s). Last edit at 06/19/2009 08:49AM by natalic.