PHP采集框架 - QueryList
最近做的项目与采集有关,无意中发现一个不错的PHP采集框架。
官网地址:点击跳转
来自官网的介绍:
QueryList不依赖任何框架和架构,它可以单独使用也可以引入到任意的PHP开发框架中去使用,如:Laravel、ThinkPHP;你可以使用它来构建简单的采集系统,也可以用它才构建高可用的分布式采集系统。它提供了丰富的基于CSS选择器的页面抽取API,完全模块化的设计,拥有强大的可扩展性。
安装
通过Composer安装
composer require jaeger/querylist
初探
看看PHP用QueryList做采集到底有多简洁吧!
<?php
use QL\QueryList;
//采集某页面所有的图片
$data = QueryList::get('http://cms.querylist.cc/bizhi/453.html')->find('img')->attrs('src');
//打印结果
print_r($data->all());
//采集某页面所有的超链接和超链接文本内容
//可以先手动获取要采集的页面源码
$html = file_get_contents('http://cms.querylist.cc/google/list_1.html');
//然后可以把页面源码或者HTML片段传给QueryList
$data = QueryList::html($html)->rules([ //设置采集规则
// 采集所有a标签的href属性
'link' => ['a','href'],
// 采集所有a标签的文本内容
'text' => ['a','text']
])->query()->getData();
//打印结果
print_r($data->all());
/**
* 在线测试采集并查看采集结果:http://querylist.cc/querylist-test
*/