Witam,
Muszę się zwrócić o pomoc, ponieważ nie wychodzi mi pobieranie pliku z serwisu turbobit.net z konta premium.
Najpierw trzeba się zalogować jako użytkownik konta premium i to już mam zrobione.
//GET
CookieContainer cookies = new CookieContainer();
HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create("http://turbobit.net/");
request.UserAgent = "Mozilla/5.0 (Windows NT 6.1; rv:2.0.1) Gecko/20100101 Firefox/4.0.1";
request.Method = "GET";
request.CookieContainer = cookies;
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
response.Close();
//POST
request = (HttpWebRequest)HttpWebRequest.Create("http://turbobit.net/login");
request.Method = "POST";
request.CookieContainer = cookies;
string login = "";
string password = "";
string loginData = String.Format("user%5Blogin%5D=uzytkownik&user%5Bpass%5D=haslo&user%5Bsubmit%5D=Zaloguj+si%C4%99");
request.ContentType = "application/x-www-form-urlencoded";
byte[] loginDataBytes = Encoding.ASCII.GetBytes(loginData);
Stream postData = request.GetRequestStream();
postData.Write(loginDataBytes, 0, loginDataBytes.Length);
postData.Close();
response = (HttpWebResponse)request.GetResponse();
Stream stream = response.GetResponseStream();
webBrowser1.Navigate("http://turbobit.net/user/login", "", loginDataBytes, "Content-Type:application/x-www-form-urlencoded");
stream.Close();
response.Close();
Tutaj jest przykładowy kod do pobierania, który pobiera tylko zawartość strony (źródło) a nie plik
HttpWebRequest request2 = (HttpWebRequest)WebRequest.Create("http://turbobit.net/fnij316998t6.html");
request2.CookieContainer = cookies;
request2.Method = "GET";
request2.KeepAlive = true;
request2.AllowAutoRedirect = true;
response = (HttpWebResponse)request2.GetResponse();
response.Cookies = request2.CookieContainer.GetCookies(request2.RequestUri);
var buffer = new byte[256];
const int Length = 256;
var readStream = response.GetResponseStream();
int bytesRead = readStream.Read(buffer, 0, Length);
var writeStream = new FileStream("C:\\turbbit.txt", FileMode.Create, FileAccess.ReadWrite);
while (bytesRead > 0)
{
writeStream.Write(buffer, 0, bytesRead);
}
readStream.Close();
writeStream.Close();
}
Mam nadzieję, że znajdzie się jakaś osoba, która mi pomoże z tym :)
Pozdrawiam