**
QueryList是一套简洁、优雅的PHP采集工具(爬虫),基于phpQuery。
试过挺多个爬虫框架的,都是很麻烦,使用各种正则看着头都疼,而QueryList 拥有与jQuery完全相同的DOM操作API,和拥有强大的内容过滤功能,可使用jQuey选择器来过滤内容,省去正则过滤的麻烦,强大的功能可以爬取你想要的东西。
使用QueryList 4.0 环境要求
PHP >= 7.0
安装使用这里就不细说,参考文档:
官方文档:http://www.querylist.cc/docs/guide/v4/installation
具体的代码实现如下:
<?php
namespace app\index\controller;
use QL\QueryList;
class Index
{
public function maoyan($num=0){
$url='https://maoyan.com/board/4?offset='.$num*10;
$data = QueryList::get($url) // 设置采集规则
->rules([
'src'=>array('.board-wrapper img.board-img','data-src'),
'board'=>array('.board-index','text'),
'name'=>array('.name','text'),
'star'=>array('.star','text'),
'releasetime'=>array('.releasetime','text'),
'score'=>array('.score','text')
])
->query()
->getData();
print_r($data->all());
echo "<br><br>";
$num++;
if($num<10) $this->maoyan($num);
}
}
结果如下 :
带cookie的请求获取api数据
$ql = QueryList::getInstance();
$response = $ql::post('https://szwego.com/service/album/get_album_themes_list.jsp',
[],[
'headers' => [
'Cookie' => 'UM_distinctid=16c9998483d18-050beea9614ac4-14367940-1fa400-16c9998483e42; token=Mzk4MDk3Q0E5RTZCN0I1MkYwMTYwNDlCQUNFNkQ5QzVFOEZCOTI1OEEwOTA2MDc0QzUzRTVCNDVDMTg1RTgzRTZBNTY1MTZDQTNFNDFCRkI2ODZGRTgxRjQxRDU3MEZD; JSESSIONID=D46383AB94D4386A81FBB5C584FDF86B; CNZZDATA1275056938=981433315-1566953717-%7C1566953717'
]
]);
$result= $response->getHtml(); //这个$result 就是api返回的数据 接下来就可以对数据进行操作
这只是一个简单的domo,都是亲测可以用的,具体更多功能见文档拓展