PHP 抓取函式

2021-10-02 11:13:04 字數 2094 閱讀 4548

<?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...