phpQuery是一個(gè)基于PHP的服務(wù)端開(kāi)源項(xiàng)目责掏,旨在讓PHP開(kāi)發(fā)人員輕松獲取網(wǎng)頁(yè)數(shù)據(jù)馏段,并進(jìn)行處理轩拨,比如獲取某天的天氣狀況。另外毅弧,phpQuery遵序jQuery的思想气嫁,可以用jQuery中的選擇器來(lái)對(duì)需要內(nèi)容進(jìn)行篩選当窗。
1.流程
抓取數(shù)據(jù)的主要流程為先引入phpQuery够坐,接著裝載文檔,最后通過(guò)phpQuery內(nèi)置的pq函數(shù)篩選出我們需要的內(nèi)容崖面。
header("Content-Type:text/html;charset=gbk;");
require("phpQuery/phpQuery.php");? //引入phpQuery
$url = "http://www.w3school.com.cn/";
phpQuery::newDocumentFile($url);? //裝載文檔
echo pq("h1")->html();? //w3school 在線(xiàn)教程
2.裝載文檔有很多元咙,這里簡(jiǎn)單說(shuō)兩種
第一種:
$url = "http://www.w3school.com.cn/";
phpQuery::newDocumentFile($url)
根據(jù)目標(biāo)的url地址,從文件(URL)轉(zhuǎn)載巫员。
第二種:
$url = "http://www.w3school.com.cn/";
$filePath = file_get_contents($url);
phpQuery::newDocumentHTML($filePath);
先用file_get_contents獲取網(wǎng)頁(yè)源代碼庶香,然后從標(biāo)簽(字符串)裝載文檔。
3.pq函數(shù)
在裝載文檔后简识,我們就獲取到一個(gè)phpQuery對(duì)象赶掖,就可以通過(guò)pq函數(shù)來(lái)操作這個(gè)phpQuery對(duì)象,我們可以和jQuery選擇器一樣使用pq函數(shù)
例如:
pq("#box")->html();
pq(".box:eq(2)")->html();
pq("input[type='text']")->val();
pq(".box")->find("#con")->html();
大家可以依照jQuery的選擇器自行嘗試七扰。