QueryList Collector 개발 매뉴얼 / QueryList3更新日志

QueryList3更新日志

经过不断的迭代,PHP采集利器QueryList迎来了QueryList3!

下面来看看QueryList3有何改变吧:
1.调整参数,不再兼容以前版本
2.使用psr-4
3.使用composer
4.更改属性名jsonArr为data
5.废弃getJson方法
6.加入getData、getHtml、getInstance以及run方法
7.加入扩展功能,通过扩展可以实现多线程批量采集,模拟登陆采集等功能,让QueryList变得无限可能。
8.改进还有诸如:进一步降低了乱码出现的几率、增强了内置的源码抓取方法、实现无限级别嵌套采集等。

现介绍已有的示例扩展:
   1.Request扩展,可以实现如携带cookie、伪造来路等任意复杂的网络请求,再也不用担心QueryList内置的抓取功能太弱了。
   2.Login扩展,可以实现模拟登陆然后采集。
   3.Multi扩展,多线程(多进程)采集扩展。
扩展通过QueryList::run 方法运行。

使用Composer安装(当然也可以不使用这种方式):

QueryList以及其依赖:
composer require jaeger/querylist

QueryList扩展需要选择性的单独安装:

Request网络操作扩展:
composer require jaeger/querylist-ext-request

Multi多线程扩展:
composer require jaeger/querylist-ext-multi

Login模拟登陆扩展:
composer require jaeger/querylist-ext-login

包含QueyListy以及扩展的完整配置如下:

{
    "require": {
        "jaeger/querylist": "^3.1",
        "jaeger/querylist-ext-request":"^1.0",
        "jaeger/querylist-ext-multi":"^1.0",
        "jaeger/querylist-ext-login":"^1.0"
    }
}

以下类库是上面扩展的依赖,安装扩展的时候会自动安装,也可以选择单独引入使用:

Http类:
composer require jaeger/http

CurlMulti多线程类:
composer require jaeger/curlmulti