WEBBOT CURL PHP

  • Creatore Discussione Creatore Discussione nuvola
  • Data di inizio Data di inizio

nuvola

Nuovo Utente
23 Apr 2020
2
0
1
Ciao a tutti sto facendo uno spider per recuperare dati da un sito.
Con CURL ho fatto l'auotlogin ma non riesco ad inviare in post e recuperare i dati da un form.

Premetto che è tutto legale perchè autorizzato dal cliente.

le funzioni che utilizzo sono:

Codice:
function login($url,$data){

    $fp = fopen("cookie.txt", "w");

    fclose($fp);

    $login = curl_init();

    curl_setopt($login, CURLOPT_COOKIEJAR, "cookie.txt");

    curl_setopt($login, CURLOPT_COOKIEFILE, "cookie.txt");

    curl_setopt($login, CURLOPT_TIMEOUT, 40000);

    curl_setopt($login, CURLOPT_SSL_VERIFYHOST, 0);

    curl_setopt($login, CURLOPT_SSL_VERIFYPEER, 0);

    curl_setopt($login, CURLOPT_RETURNTRANSFER, TRUE);

    curl_setopt($login, CURLOPT_URL, $url);

    curl_setopt($login, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);

    curl_setopt($login, CURLOPT_FOLLOWLOCATION, TRUE);

    curl_setopt($login, CURLOPT_POST, TRUE);

    curl_setopt($login, CURLOPT_POSTFIELDS, $data);

    ob_start();

    return curl_exec ($login);

    ob_end_clean();

    curl_close ($login);

    unset($login);   

}                 



function grab_page($site){

    $ch = curl_init();

    curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);

    curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);

    curl_setopt($ch, CURLOPT_TIMEOUT, 40);

    curl_setopt($ch, CURLOPT_COOKIEFILE, "cookie.txt");

    curl_setopt($ch, CURLOPT_URL, $site);

    ob_start();

    return curl_exec ($ch);

    ob_end_clean();

    curl_close ($ch);

}



function post_data($site,$data){

    $datapost = curl_init();

    $headers = array();

    $headers[] = "Content-Type: application/json" ;

    $headers[] = "Charset: utf-8";

    $headers[] = "Accept: application/json";

    curl_setopt($datapost, CURLOPT_URL, $site);

    curl_setopt($datapost, CURLOPT_TIMEOUT, 40000);

    curl_setopt($datapost, CURLOPT_HEADER, TRUE);

    curl_setopt($datapost, CURLOPT_HTTPHEADER, $headers);

    curl_setopt($datapost, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);

    curl_setopt($datapost, CURLOPT_POST, TRUE);

    curl_setopt($datapost, CURLOPT_POSTFIELDS, $data);

    curl_setopt($datapost, CURLOPT_COOKIEFILE, "cookie.txt");

    ob_start();

    return curl_exec ($datapost);

    ob_end_clean();

    curl_close ($datapost);

    unset($datapost);   

}
 
Ultima modifica:
@nuvola

Da regolamento del forum, come tutti noi sei tenuto ad usare il tag
PHP (2).png
quando posti del codice php, oppure la funzione codice dalla barra degli strumenti
box inserisci.png

Inoltre IMPORTANTE: Prima di creare una nuova discussione o di rispondere alle discussioni esistenti ricordati di leggere attentamente il Regolamento del Forum e l'eventuale regolamento specifico della sezione!
Grazie

Correggi i tuoi post mi raccomando altrimenti sarò costretto a cancellare le discussioni
 

Discussioni simili