PHP curl 攜帶cookie請求抓取源碼,模擬登錄。

公司須要採集一批手機號碼,有指定網站。可是須要登錄後才能看到客戶號碼,手動點擊複製太慢,如此就寫了如下模擬登錄採集號碼程序,分享給你們參考參考.cookie

function request_url_data($data) #獲取保存COOKIE
{
    $cookieSuccess = __DIR__."/cookie.txt";#cookie保存文件地址
    $data['user'] = '用戶名';
    $data['pwd'] = '密碼';
    $requesturl = 'http://GET登錄提交地址?'.http_build_query($data);
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $requesturl);
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_COOKIEFILE, $cookieSuccess);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); 
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
    $data=curl_exec($ch);
    curl_close($ch);
    return $data;
}

function get_list($requesturl)#攜帶COOKIE請求獲取登錄後的內容
{
    $cookieSuccess = __DIR__."/cookie.txt";
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $requesturl);
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_COOKIEFILE, $cookieSuccess); //使用上面獲取的cookies
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); // https請求 不驗證證書和hosts
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
    $data=curl_exec($ch);
    curl_close($ch);
    return $data;
}
相關文章
相關標籤/搜索