<?php
// 1、php抓取可以採集別人**的資料,前提不違法
// 2、用過curl,獲取介面的資料
// 3、php寫的介面,第三方介面(如:天氣介面),或者其他語言寫的。
// 4、我們php想使用這些介面怎麼辦呢?
// 那就需要curl方法,就算你獲取別人的介面(請求別人的網路),就需要用curl這個請求。
// curl是非常常用的,而且用處非常的廣。
// 抓取一般都乙個字符集
header
("content-type: text/html;charset=utf8");
// 我們要抓取的頁面,url可以是檔案,可以是pc頁面,也可以是介面
$url
='';// $url = '';
// $url = '';
// php抓取寫好以後都是通用的
$ch=
curl_init()
;// 建立乙個新curl資源
// 第乙個引數是控制代碼 ,第二個引數叫常量,每乙個常量代表乙個功能
curl_setopt
($ch
,curlopt_url
,$url);
// 設定url
// 為了防止url是假的
curl_setopt
($ch
,curlopt_timeout,30
);// 設定超時限制防止死迴圈
// 抓取時頁面與我們設定的url不同,是否抓取
curl_setopt
($ch
,curlopt_followlocation,1
);// 爬取重定向頁面
curl_setopt
($ch
,curlopt_autoreferer,1
);// 自動設定referer,防止盜鏈
// 1、post請求,0:get請求
curl_setopt
($ch
,curlopt_post,1
);// 傳送乙個常規的post請求
// $data:請求別人的介面需要的的一些引數,是乙個陣列 與我們接收前端以post方式提交過來的資料是乙個反向過程
curl_setopt
($ch
,curlopt_postfields
,$data);
// post提交的資料報
//curl_setopt
($ch
,curlopt_header,0
);// 顯示返回的header區域內容
//curl_setopt
($ch
,curlopt_returntransfer,1
);// 要求結果儲存到字串中還是輸出到螢幕上
// 禁用ssl證書的驗證,就可以解決htpps獲取不到的問題
curl_setopt
($ch
,curlopt_ssl_verifypeer,0
);// 對認證證書**的檢查
curl_setopt
($ch
,curlopt_ssl_verifyhost,0
);// 從證書中檢查ssl加密演算法是否存在
// 預設值,讓 curl 自己判斷使用哪個版本。 (強制使用 http/1.1)。
curl_setopt
($ch
,curlopt_useragent
,'data');
// 在http請求中包含乙個"user-agent: "頭的字串。
$html
=curl_exec
($ch);
// 執行curl,請求url,把結果複製給變數if(
curl_errno
($ch))
curl_close
($ch);
// 關閉curl連線
print_r
($html);
?>
php抓取網頁
用php抓取頁面的內容在實際的開發當中是非常有用的,如作乙個簡單的內容採集器,提取網頁中的部分內容等等,抓取到的內容在通過正規表示式做一下過濾就得到了你想要的內容,以下就是幾種常用的用php抓取網頁中的內容的方法。1.file get contents php url contents file g...
asp 抓取函式
呼叫xmlhttp元件建立乙個物件並進行出設定 通過get方法向伺服器 傳送命令 判斷程式執行成功 對伺服器返回的資料進行處理 釋放物件,節約資源 處理抓取回來的資料需要呼叫adodb.stream元件並驚醒初始化設定,有下面一段 來完成 function bytestostr body,cset ...
php抓取遠端檔案
下面是我寫的 在這裡做下備份,以便以後忘記 設定你需要抓取的url curl setopt curl,curlopt url,result 3 0 設定header curl setopt curl,curlopt header,0 設定curl 引數,要求結果儲存到字串中還是輸出到螢幕上。curl...