Witam. Chce zrobić skrypt, który automatycznie zaloguje mnie na rapidshare i sprawdzi kilka rzeczy. Mam 1 problem. Nie wiem czy da sie zalogowremiumzone.html wygląda następująco:
| Login: | |
| Password: | |
| |
[/code] Wykombinowałem coś takiego ale nie działa:
Niestety dalej nie działa. Pokazuje się błąd: Warning: curl_setopt() [function.curl-setopt]: CURLOPT_FOLLOWLOCATION cannot be activated when in safe_mode or an open_basedir is set in /home/pcworld/public_html/logowanie.php on line 9
<?php
$curl = curl_init('https://ssl.rapidshare.com/cgi-bin/premiumzone.cgi');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_HEADER, 0);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)");
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_COOKIEFILE, "cookiefile");
curl_setopt($curl, CURLOPT_COOKIEJAR, "cookiefile"); # SAME cookiefile
curl_setopt($curl, CURLOPT_URL, "https://ssl.rapidshare.com/premiumzone.html"); # this is where you first time connect - GET method authorization in my case, if you have POST - need to edit code a bit
$xxx = curl_exec($curl);
curl_setopt($curl, CURLOPT_POSTFIELDS, "login=1234&password=1234"); # form params that'll be used to get form results
$xxx = curl_exec($curl);
curl_close ($curl);
echo $xxx;
?>
Na serwerze isx.pl wyskakuje błąd w 9 linijce ale strona się dalej ładuje lecz nie da rady sie zalogować. Na home.pl nic się nie dzieje - nie loguje mnie ani nic się nie wyświetla.
<?php error_reporting(E_ALL);
$curl = curl_init('https://ssl.rapidshare.com/cgi-bin/premiumzone.cgi');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_HEADER, 0);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)");
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_COOKIEFILE, "cookiefile");
curl_setopt($curl, CURLOPT_COOKIEJAR, "cookiefile"); # SAME cookiefile
curl_setopt($curl, CURLOPT_URL, "https://ssl.rapidshare.com/premiumzone.html"); # this is where you first time connect - GET method authorization in my case, if you have POST - need to edit code a bit
$xxx = curl_exec($curl);
curl_setopt($curl, CURLOPT_POSTFIELDS, "login=4233317&password=rapidshare1"); # form params that'll be used to get form results
curl_close ($curl);
echo $xxx;
?>
Niestety strona wywala mi błąd: “POST method called without content” a kod błąd w 9 linijce
W dniu05.05.2008, o godzinie20:19został dopisany post przez radmistrz2
Na kraasnalu kod nie wywala błędów. Błąd wywala rapidshare: “POST method called without content”
ok dzięki działa. Teraz mam kolejny problem. Nie mam pojęcia jak zintegrować skrypt, aby curlem pobierał mi plik dostępny po zalogowaniu. Oto skrypt do pobierania:
$ch = curl_init('http://rs258tg.rapidshare.com/files/112707895/dl/Matura_2008_Polski_Odpowiedzi_Fabi_GT.rar'); //przykładowy link do pliku z rapidshare
$fh = fopen('Matura_2008_Polski_Odpowiedzi_Fabi_GT.rar', 'w');//przykladowa nazwa
curl_setopt($ch, CURLOPT_FILE, $fh);
curl_exec($ch);
fclose($fh);
curl_close($ch);
Jeśli dam to tak:
<?php error_reporting(E_ALL);
$curl = curl_init('https://ssl.rapidshare.com/cgi-bin/premiumzone.cgi');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_HEADER, 0);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)");
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_COOKIEFILE, "cookiefile");
curl_setopt($curl, CURLOPT_COOKIEJAR, "cookiefile"); # SAME cookiefile
curl_setopt($curl, CURLOPT_POSTFIELDS, "login=4233317&password=rapidshare1");
$xxx = curl_exec($curl);
$ch = curl_init('http://rs258tg.rapidshare.com/files/112707895/dl/Matura_2008_Polski_Odpowiedzi_Fabi_GT.rar'); //przykładowy link do pliku z rapidshare
$fh = fopen('Matura_2008_Polski_Odpowiedzi_Fabi_GT.rar', 'w');//przykladowa nazwa
curl_setopt($ch, CURLOPT_FILE, $fh);
curl_exec($ch);
fclose($fh);
curl_close($ch);
curl_close ($curl);
echo $xxx;
?>
Skopiuje mi stronę, która wyświetli się gdy nie jestem zalogowany. Z tego co wiem to wina ciasteczek a 2 zadania nie mają ze sobą związku. Czy da sie jakoś zintegrować skrypt tak, aby działał?
Hmmm… aczkolwiek nie robiłem nigdy tak, myślę że się da. Wyślij mi na priv swoje hasło do rapida, bo musiałbym sprawdzać kod na bieżąco, a sam nie mam konta Premium. Później będziesz mógł sobie to hasło zmienić