網頁爬蟲 - php curl 如何擷取驗證碼session_id?

來源:互聯網
上載者:User
今天在試著用curl登陸,驗證碼手動輸入。

問題和 如何用curl類比帶有圖片驗證碼的表單登入? 類似

而我的問題在於如何在拉取圖片的時候拿到session或者設定?

(那個問題的第一個答案並不能正確運行)

求大神解答。

回複內容:

今天在試著用curl登陸,驗證碼手動輸入。

問題和 如何用curl類比帶有圖片驗證碼的表單登入? 類似

而我的問題在於如何在拉取圖片的時候拿到session或者設定?

(那個問題的第一個答案並不能正確運行)

求大神解答。

$cookie_file = dirname(__FILE__).'/cookies/'.$user.'cookie.txt';// 初始化$curl = curl_init('http://');$header = array();$header[] = 'User-Agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36';curl_setopt($curl, CURLOPT_HTTPHEADER, $header);// 不輸出header頭資訊curl_setopt($curl, CURLOPT_HEADER, 0);// 儲存到字串而不是輸出curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);curl_setopt($curl, CURLOPT_COOKIEJAR,  $cookie_file); //儲存cookies// post資料curl_setopt($curl, CURLOPT_POST, 1);// 請求資料curl_setopt($curl, CURLOPT_POSTFIELDS, $post);// 是否抓取跳轉後的頁面curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);$response = curl_exec($curl);curl_close($curl);

擷取session

自己改下,不是通用的。別來說不行

    //擷取cookies值    private function getCookies(){        $curl = curl_init('http://113.57.132.2:83/login.aspx');        // 不輸出header頭資訊        curl_setopt($curl, CURLOPT_HEADER, 1);        curl_setopt($curl, CURLOPT_NOBODY, 1);         // 偽裝瀏覽器        curl_setopt($curl, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.118 Safari/537.36');        // 儲存到字串而不是輸出        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);        $rs = curl_exec($curl);        curl_close($curl);        preg_match('%ASP.NET_SessionId=.*?;%sim',$rs,$arr);        $cookies=str_replace('ASP.NET_SessionId=','',$arr[0]);        $cookies=rtrim($cookies,';');        return $cookies;        //$this->$cookies=rtrim($cookies,';');    }
  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.