問題 訪問極客時間內容出錯

    public function gk_get()
    {
        $courseId = 185;

        $url = 'http://time.geekbang.org/serv/v1/article';
        //初始化
        $curl = curl_init();
        //設置抓取的url

        $headerOptions = [
            "Accept: application/json, text/plain, */*",
            "Accept-Encoding: gzip, deflate, br",
            "Accept-Language: zh-CN",
            "Connection: keep-alive",
            "Content-Length: 58",
            "Content-Type: application/json",
            "Cookie: gksskpitn=3159b21b-0651-4bf0-b2df-5d04d3c5d461; _ga=GA1.2.452630884.1585702530; _gid=GA1.2.1543509748.1585702530; LF_ID=1585702533807-2608779-9979434; GCID=b45fa5c-e31f2e2-6e9b07d-f85a389; GRID=b45fa5c-e31f2e2-6e9b07d-f85a389; GCESS=BAcE2YitrQoEAAAAAAsCBAAFBAAAAAABBE2SFwAGBLXkg34EBAAvDQAJAQEIAQMMAQEDBJoKhF4CBJoKhF4-; Hm_lvt_022f847c4e3acd44d4a2481d9187f1e6=1585705098,1585705866,1585711765,1585711782; Hm_lpvt_022f847c4e3acd44d4a2481d9187f1e6=1585711784; SERVERID=1fa1f330efedec1559b3abbcb6e30f50|1585711825|1585702519; _gat=1",
            "Host: time.geekbang.org",
            "Origin: https://time.geekbang.org",
            "Referer: https://time.geekbang.org/column/article/185",
            'User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.81 Safari/537.36 Maxthon/5.3.8.2000'
        ];
        $postOptions = [
            "id" => $courseId,
            "include_neighbors" => false,
            "is_freelyread" => true
        ];

        curl_setopt($curl, CURLOPT_URL, $url);

        curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
        curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 0);
        curl_setopt($curl, CURLOPT_SSLVERSION, 1);

        //設置頭文件的信息作爲數據流輸出
        curl_setopt($curl, CURLOPT_HTTPHEADER, $headerOptions);
        curl_setopt($curl, CURLOPT_HEADER, 0);
        //設置獲取的信息以文件流的形式返回,而不是直接輸出。
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
        //設置post方式提交
        curl_setopt($curl, CURLOPT_POST, 1);
        curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 5);
        //設置post數據
        curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($postOptions));


        $proxy = '';
        curl_setopt($curl, CURLOPT_PROXY, $proxy);
        curl_setopt($curl,CURLOPT_FOLLOWLOCATION,1);
        //執行命令
        $data = curl_exec($curl);
        $errno = curl_errno($curl);
        //關閉URL請求
        curl_close($curl);
        var_dump($data);
        var_dump($errno);
    }

使用賬號登陸,通過瀏覽器獲取header信息,替換代碼中的header參數,獲取並不能抓取,

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章