Pokaż wyniki od 1 do 2 z 2

Temat: [cURL] Logowanie na stronę.

  1. #1

    Domyślnie [cURL] Logowanie na stronę.

    Witam

    Chciałbym nauczyć się logować na strony internetowe oraz wyciągać z nich jakiś tekst.
    Początkowo zacząłem od własnego skryptu na kompie, który jest logowaniem.

    Kod html:
    <!DOCTYPE html>
    <html>
    <head>
    	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    	<title>AUTOMATPHP - logowanie</title>
    </head>
    
    <body>
    	<form method='post' action="wpisautomat.php">
    	<p>Wpisz nazwę użytkownika:
    	<input type="text" name="user">
    	</p>
    	<p>Wpisz hasło:
    	<input type="password" name="pass">
    	</p>
    	<p>
    	<input type="submit" name="Submit" value="Zaloguj">
    	</p>
    	</form>
    </body>
    
    </html>
    Teraz stworzyłem skrypt który miałby teoretycznie wejść na stronę wpisać login i hasło i przejść do wpisautomat.php co powinno chyba przebiec automatycznie.

    Kod php:
    <?php
     $c 
    curl_init();

     
    curl_setopt($cCURLOPT_URL"http://127.0.0.1/login.php");
     
    curl_setopt($cCURLOPT_POST1);//przesylamy metodą post
     
    curl_setopt($cCURLOPT_POSTFIELDS'user=Szopen&pass=phpautomatphp'); //dane do wyslania
     
    curl_setopt($cCURLOPT_RETURNTRANSFER1);
     
    $page curl_exec($c);
     
    curl_close($c);
     echo 
    'Wynik: <br>' .$page;
    ?>
    Jednak wynikiem tego skryptu jest poprostu Wynik: + strona login.php i tak jakby się nic nie stało. Nie wiem co robić. Dopiero zaczynam zabawę z cURLem

    Ostatecznie chciałbym stworzyć skrypt logujący się na stronie filesonic , filejungle itp. i pobrać z tamtąd tekst w którejś linijce.

    Pozdrawiam.

  2. #2
    Użytkownik Avatar kanar123
    Dołączył
    27-03-2008
    Skąd
    127.0.0.1
    Posty
    444

    Domyślnie

    Jeśli stan zalogowania jest przechowywany w ciasteczkach musisz dodać:
    curl_setopt($c, CURLOPT_HEADER , 1);
    curl_setopt($c, CURLOPT_COOKIEFILE, './cookie.txt');
    curl_setopt($c, CURLOPT_COOKIEJAR,'./cookie.txt');
    Czyli całość:

    $c
    = curl_init();

    curl_setopt($c, CURLOPT_URL, "http://127.0.0.1/login.php");
    curl_setopt($c, CURLOPT_POST, 1);//przesylamy metodą post
    curl_setopt($c, CURLOPT_POSTFIELDS, 'user=Szopen&pass=phpautomatphp'); //dane do wyslania
    curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($c, CURLOPT_HEADER , 1);
    curl_setopt($c, CURLOPT_COOKIEFILE, './cookie.txt');
    curl_setopt($c, CURLOPT_COOKIEJAR,'./cookie.txt');
    $page = curl_exec($c);
    curl_close($c);
    echo
    'Wynik: <br>' .$page;

    Plik cookie musi istnieć.

    edit:
    ... formularz przesyła zapytanie do

    wpisautomat.phpwięc link do niego prawdopodobnie musi być taki sam przy przesyłaniu curlem ;]

    curl_setopt($c, CURLOPT_URL, "http://127.0.0.1/wpisautomat.php");
    Ostatnio edytowane przez kanar123 ; 24-12-2011 o 20:38

Uprawnienia

  • Nie możesz zakładać nowych tematów
  • Nie możesz pisać wiadomości
  • Nie możesz dodawać załączników
  • Nie możesz edytować swoich postów
  •