苏南大叔讲述一下一款国人出品的php库,叫做querylist
优采云 发布时间: 2021-08-07 00:28苏南大叔讲述一下一款国人出品的php库,叫做querylist
本文开头,苏南大叔讲了一个中国人出品的PHP库,叫querylist,可以用来抓取网络数据。这个查询列表类似于python下的scrapy。当然,在之前的文章中,苏南大叔介绍了scrapy crawling。有兴趣的可以通过文末的链接了解更多。
如何安装和使用 QueryList,一个 php 数据捕获库? (图5-1)
另外,这个查询列表是基于开源库phpquery的。如果你用过phpquery,在接下来的学习中你会看到一些类似的阴影。如果你没用过phpquery,那你还是可以对比一下jquery,思路都差不多。好了,介绍这么多。如果您有兴趣,欢迎查看下一个查询列表系列文章。
苏南大叔实验时的composer版本是:1.6.5,php版本是7.2.1。
官方网站和安装要求
Querylist是中国人的作品,其官方网站是:
querylist要求的php版本至少为7.0,可以通过以下命令查看本地php版本号:
php -v
如何安装和使用 QueryList,一个 php 数据捕获库? (图5-2)
安装第一步是安装composer
安装composer就不描述太多了。 querylist的使用,理论上与composer密切相关。与composer的使用相关的文章请参考文末链接。如果你已经安装了composer,可以跳过这一步。
下面介绍的是mac下使用命令行语句安装composer的例子:
curl -o composer.phar 'https://getcomposer.org/composer.phar'
mv composer.phar /usr/local/bin/composer
chmod 777 /usr/local/bin/composer
相关链接:
第二步是设置全局加速composer的repo库
这一步不是必须的。如果安装querylist时没有响应,可以执行该语句。声明的目的是为了把composer改成快速的国内源码,类似于node下的cnpm。
composer config -g repo.packagist composer https://packagist.phpcomposer.com
第三步,安装querylist
在空白文件夹下,首先初始化composer项目。
composer init
然后使用composer安装jaeger/querylist。
composer require jaeger/querylist
如何安装和使用 QueryList,一个 php 数据捕获库? (图5-3)
安装成功,查看版本号
截至发稿,使用以下命令查看最新版本的querylist版本号4.0.3。
composer show -i jaeger/querylist
如何安装和使用 QueryList,一个 php 数据捕获库? (图5-4)
介绍示例demo
下面这句话是官方给出的最简单的配置。在此,限于篇幅,苏南叔不做过多解释。
require './vendor/autoload.php';
use QL\QueryList;
$html = array('.two>img:eq(1)','src'),
//采集span标签中的HTML内容
'other' => array('span','html')
);
$data = QueryList::html($html)
->rules($rules)
->query()
->getData();
print_r($data->all());
使用
是key中的key点。新手经常被卡在这里。还有autoload.php,这是composer项目的标准配置。剩下的就是querylist的相关功能了,下面苏南叔叔会详细介绍。敬请关注。
require './vendor/autoload.php';
use QL\QueryList;
如何安装和使用 QueryList,一个 php 数据捕获库? (图5-5)
相关链接汇总
本文中苏南大叔介绍的querylist与scrapy类似。但是querylist是基于php的,对php的忠实用户更具吸引力。
不过,苏南叔还是给你一个建议,那就是多尝试python。在目前的环境下,看来python系列还是很有前途的。而且在爬取方面,scrapy 还是比 querylist 有优势。好的,仅此而已。请继续关注苏南叔的后续文字,谢谢阅读。
[苹果]
[添加群组]
【源码】本文中的代码片段及相关软件,请点击此处获取
【绝密】秘籍文章入口,只教给有缘人
查询列表 phpquery