淺析php如何實(shí)現(xiàn)爬取數(shù)據(jù)原理
官方網(wǎng)站站點(diǎn):簡(jiǎn)單、 靈活、強(qiáng)大的PHP采集工具,讓采集更簡(jiǎn)單一點(diǎn)。
簡(jiǎn)介
QueryList使用jQuery選擇器來(lái)做采集,讓你告別復(fù)雜的正則表達(dá)式;QueryList具有jQuery一樣的DOM操作能力、Http網(wǎng)絡(luò)操作能力、亂碼解決能力、內(nèi)容過(guò)濾能力以及可擴(kuò)展能力;可以輕松實(shí)現(xiàn)諸如:模擬登陸、偽造瀏覽器、HTTP代理等意復(fù)雜的網(wǎng)絡(luò)請(qǐng)求;擁有豐富的插件,支持多線程采集以及使用PhantomJS采集JavaScript動(dòng)態(tài)渲染的頁(yè)面。
安裝
通過(guò)Composer安裝:
composer require jaeger/querylist
使用教程:
直接上代碼:
<?php
include './vendor/autoload.php';
// 使用composer安裝后引入目錄
use QL\QueryList;
// 使用插件
$html = file_get_contents('https://www.biqudu.com/14_14778/');
// 手動(dòng)獲取頁(yè)面
$data = QueryList::html($html);
// 得到頁(yè)面內(nèi)容
$data = QueryList::setHtml('https://www.biqudu.com/14_14778/');
// 等同于上面的html()
$data->rules([
// 采集所有a標(biāo)簽的href屬性
'link' => ['a','href'],
// 采集所有a標(biāo)簽的文本內(nèi)容
'text' => ['a','text']
]);
// 此處$data = 上面已經(jīng)獲取到網(wǎng)頁(yè)內(nèi)容之后的對(duì)象
// 設(shè)置采集規(guī)則 替代了傳統(tǒng)正則
$data->query();
// 此處$data = 上面已經(jīng)獲取到網(wǎng)頁(yè)內(nèi)容之后的對(duì)象
// query 執(zhí)行操作
$data->getData();
// 此處$data = 上面已經(jīng)獲取到網(wǎng)頁(yè)內(nèi)容之后的對(duì)象
// 得到數(shù)據(jù)結(jié)果
$data->all();
// 此處$data = 上面已經(jīng)獲取到網(wǎng)頁(yè)內(nèi)容之后的對(duì)象
// 將數(shù)據(jù)轉(zhuǎn)換成二維數(shù)組
print_r($data->all());
// 打印結(jié)果
上面的基本使用方法就是這樣了 這樣我們已經(jīng)可以抓取到一定的數(shù)據(jù)了
相關(guān)文章
php簡(jiǎn)單實(shí)現(xiàn)批量上傳圖片的方法
這篇文章主要介紹了php簡(jiǎn)單實(shí)現(xiàn)批量上傳圖片的方法,實(shí)例分析了php文件傳輸?shù)膶?shí)現(xiàn)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2016-05-05
PHP結(jié)合jQuery實(shí)現(xiàn)找回密碼
本文將使用PHP+Mysql+jQuery來(lái)實(shí)現(xiàn)一個(gè)密碼找回的功能,分享給大家思路和具體的代碼,有需要的小伙伴可以參考下。2015-07-07
php簡(jiǎn)單統(tǒng)計(jì)中文個(gè)數(shù)的方法
這篇文章主要介紹了php簡(jiǎn)單統(tǒng)計(jì)中文個(gè)數(shù)的方法,涉及strlen、mb_strlen及mb_strwidth等函數(shù)的使用方法與相關(guān)注意事項(xiàng),需要的朋友可以參考下2016-09-09
PHP設(shè)計(jì)模式之裝飾器模式實(shí)例詳解
這篇文章主要介紹了PHP設(shè)計(jì)模式之裝飾器模式,簡(jiǎn)單介紹了裝飾器模式的概念、功能并結(jié)合實(shí)例形式詳細(xì)分析了php實(shí)現(xiàn)與使用裝飾器模式的相關(guān)操作技巧,需要的朋友可以參考下2018-02-02

