PHP curl實現抓取302跳轉後頁面的示例

2022-10-06 12:00:12 字數 1051 閱讀 8318

php的curl正常抓取頁面程式如下:

$url = ijkbyi'';

$ch = curl_init();

curl_setopt($ch, curlopt_url, $url);

curl_setopt($ch, curlopt_verbose, true);

curl_setopt($ch, curlopt_header, true);

curl_setopt($ch, curlopt_nobody, true);

curl_setopt($ch, curlo程式設計客棧pt_customijkbyirequest, 'get');

curl_setopt($ch, curlopt_returntransfer, true);

curl_setopt($ch, curlopt_timeout, 20);

curl_setopt($ch, curlopt_autoreferer, true);

curl_setopt($ch, curlop true);

$ret = curl_exec($ch);

$info = curl_getinfo($ch);

curl_close($ch);

如果你抓取到的是302狀態,是因為再抓取的過程中,有的跳轉需要給下乙個鏈結傳遞引數,而下乙個鏈結同時也設定了如果沒接收到相應的引數是為非法訪問。

curl_setopt($curl, curlopt_customrequest, 'get');

顯示就應該正常了。

上面用來抓取功能,幾乎應該沒問題的。你可以查一下curlopt_customrequest相關資料。

使用乙個自定義的請求資訊來代替」get」或」head」作為http請求。這對於執行」delete」 或者其他更ijkbyi隱蔽的http請求。有效值如」get」,」post」,」connect」等等。也就是說,不要在這裡輸入整個http請求。例如輸入」get /index.html http/1.0\r\n\r\n」是不正確的。

本文標題: php curl實現抓取302跳轉後頁面的示例

本文位址:

php curl 請求302跳轉頁面

若請求url已改變且設定了自動跳轉,可通過設定 curlopt followlocation 引數實現自動請求跳轉鏈結。若要手動判斷是否跳轉,可通過 curl getinfo ch 方法獲取具體請求資訊,其中包括要跳轉路徑。例項 url ch curl init curl setopt ch,cur...

php curl 多執行緒抓取

curl 多執行緒抓取 curl 多執行緒 param array array 並行 param int timeout 超時時間 防止死迴圈耗死cpu 這段是根據網上的寫法 do while mrc curlm call multi perform 當正在接受資料時 while active an...

phpCURL抓取網頁內容

參考 1 建立乙個新curl資源 ch curl init 設定url和相應的選項 curl setopt ch,curlopt url,curl setopt ch,curlopt header,false 抓取url並把它傳遞給瀏覽器 data curl exec ch echo data 關閉...