#QueryList交流社区: http://querylist.cc/

#QueryList文档: http://doc.querylist.cc/

#QueryList交流QQ群:123266961

#QueryList简介

QueryList是一个基于phpQuery的通用列表采集类,是一个简单、 灵活、强大的采集工具,采集任何复杂的页面 基本上就一句话就能搞定了。

#QueryList 使用

//获取采集对象

$hj = QueryList::Query('http://www.baidu.com/s?wd=QueryList',array('title'=>array('h3','text'),'link'=>array('h3>a','href')));

//输出结果:二维关联数组

print_r($hj->data);

上面的代码实现的功能是采集百度搜索结果页面的所有搜索结果的标题和链接,然后分别以二维关联数组的格式输出。

Query() 静态方法

返回值:QueryList对象

Query方法为QueryList唯一的主方法,用静态的方式调用。

原型:

QueryList::Query($page,array $rules, $range = '', $outputEncoding = null, $inputEncoding = null,$removeHead = false)

中文解释:

QueryList::Query(采集的目标页面,采集规则[,区域选择器][,输出编码][,输入编码][,是否移除头部])

//采集规则

$rules = array(

'规则名' => array('jQuery选择器','要采集的属性'[,"标签过滤列表"][,"回调函数"]),

'规则名2' => array('jQuery选择器','要采集的属性'[,"标签过滤列表"][,"回调函数"]),

..........

[,"callback"=>"全局回调函数"]

);

//注:方括号括起来的参数可选

参数解释:

QueryList 扩展

Request扩展

可以实现如携带cookie、伪造来路等任意复杂的网络请求,再也不用担心QueryList内置的抓取功能太弱了。

Login扩展

可以实现模拟登陆然后采集。

Multi扩展

多线程(多进程)采集扩展。

扩展通过QueryList::run 方法运行。

##QueryList 安装

composer require jaeger/querylist

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

{

"require": {

"jaeger/querylist": "^3.1",

"jaeger/querylist-ext-request":"^1.0",

"jaeger/querylist-ext-multi":"^1.0",

"jaeger/querylist-ext-login":"^1.0"

}

}

##QueryList 依赖库

phpQuery

##其它说明

QueryList 内置的只是简单的源码抓取方法,遇到更复杂的抓取情况,如:需要登陆

身份验证 时,请配合其它的PHP的HTTP类来使用,通过将辅助的HTTP类抓取到的网页源码传给QueryList即可。

##DEMO站

thinkphp版本:V3.1.2

QueryList版本:V1.6

后台地址: /admin

后台账号密码: guest guest

这个demo站实现的功能相当于一个轻量级的微博站,内容全自动采集更新,可以自定义时间间隔采集任意站点的信息,自动更新到这个站点来,只需要在后台规则库简单的添加一条规则就可以实现全自动采集了,大家可以自行进入后台进行尝试,体验QueryList的魅力!

##作者信息

Author : Jaeger

Email : hj.q@qq.com

交流QQ群:123266961

天猫php采集列表,QueryList: QueryList是一个基于phpQuery的通用列表采集类,是一个简单、 灵活、强大的采集工具,采集任何复杂的页面 基本上就一句话就能搞定了。...相关推荐

  1. java 插桩 工具_一个基于Eclipse的通用Java程序插桩工具.pdf

    第38卷第7期 计算机科学 V01.38NO.7 Science 2011 2011年7月 Computer July 一个基于Eclipse的通用Java程序插桩工具 郑晓梅 (南京中医药大学信息技 ...

  2. phpquery类php,一个基于phpQuery的php通用采集类分享

    一.采集类源码<?php /** *通用列表采集类 *版本V1.3 *作者:JAE */ require_once '../phpQuery/phpQuery/phpQuery.php'; cl ...

  3. layui导航栏页面滚动固定_帮你搞定长滚动网页的设计!这5种设计策略需谨记!...

    网站中的内容再好,总得让用户能看到,才有价值,而矛盾在于,首屏的空间始终是有限的.所以,我们总希望用户能够滚动页面向下看,从某种意义上来说,长滚动页面和无限滚动的设计,如此地受欢迎,就是因为它贴合了用 ...

  4. 【DD推荐】还用翻译工具给参数和方法取名?装个插件快速搞定!

    点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! DD推荐:第一期 今天推荐一款国人开发的IntelliJ ...

  5. html解析的简单方式,HTML解析看我就够了,不依赖任何第三方,两个方法搞定

    看完这篇文章你会知道HTML解析其实很简单~ 项目中后台返回的数据是HTML格式的,感觉特别蛋疼,花了不少时间找了不少资料,感觉解析起来都特别麻烦,经过一段时间研究,发现一般HTML格式的数据都是有规 ...

  6. 一个基于POI的通用excel导入导出工具类的简单实现及使用方法

    前言: 最近PM来了一个需求,简单来说就是在录入数据时一条一条插入到系统显得非常麻烦,让我实现一个直接通过excel导入的方法一次性录入所有数据.网上关于excel导入导出的例子很多,但大多相互借鉴. ...

  7. php pdo 事物类,一个基于PDO的数据库操作类(新) 一个PDO事务实例

    /* * 作者:胡睿 * 日期:2011/03/19 * 电邮:hooray0905@foxmail.com * * 20110319 * 常用数据库操作,如:增删改查,获取单条记录.多条记录,返回最 ...

  8. 一个基于JDBC的通用DAO的设计参考(北大青鸟课程)

    在S2阶段和Y2阶段的前部分是使用的JDBC来访问数据库,但是通常我们编写的时候在每个工程中都编写代码基本类似却有一点点不同之处的DAO层代码,现在介绍一种相对简化的方式来简化编程 现在我们来分析下S ...

  9. 【转】一个基于Ajax的通用(组合)查询(ASP.NET)

    asp.net技术 简单介绍: 1.完全无刷实现,客户端主要实现生成条件选择或录入控件,并进行录入控制: 2.将字段信息存放于XML文件,便于数据移植 3.通过js脚本,ajax框架引擎获取字段信息 ...

最新文章

  1. php7 configure: error: Cannot find OpenSSL‘s <evp.h> 问题解决
  2. 企业网站设计方案需先明确网站主题
  3. loadrunner发送json_Loadrunner模拟JSON接口请求进行测试
  4. 五. 面向对象高级特性4. 接口的概念和使用
  5. 动态规划 —— 背包问题 P03 —— 多重背包
  6. HTML是万维网核心语言的第几代,Html5相关的知识点总结
  7. gulp-cli命令安装出错_一个牛逼的数据库操作命令行工具:mycli
  8. 湖北职业技术学院计算机协会,湖北职业技术学院2019年教师教学能力大赛顺利举行...
  9. Chess DP 思维题
  10. 映美精两个相机同步采集求助
  11. 现场总线CAN和工业以太网EtherCAT详解
  12. CSS 引入的三种方式
  13. Java操作外部数据源(RDBMS,Hive,HBase)
  14. LOJ#6198. 谢特【后缀自动机/数组 + Trie树查异或最大值 + Trie树合并】
  15. python27安装get-pip
  16. python研究背景和意义_选题背景、目的及研究意义
  17. Go语言学习资料大全整理
  18. (六)Flutter 基础部件 TextView 和TextStyle Flutter 容器 装饰盒子 边框 圆角 阴影 形状 渐变 背景图像
  19. 我用Python分析5W+视频数据,看看谁才是最咕UP主
  20. 数字证书原理详细介绍 单向认证 双向认证

热门文章

  1. CNN网络优化加速汇总
  2. NDK历史版本下载方法
  3. OpenCV 特征点检测与图像匹配
  4. 计算机pe开启网络模块,组装的电脑进入PE是哪个键
  5. webview gif android,使用WebView android读取Gif图像
  6. 微信 php post json,微信企业号:如何POST JSON数据发送消息给企业号成员
  7. 安徽大学计算机考研是408吗,安徽大学408计算机学科专业基础综合考研复习经验...
  8. 你还不知道 Eureka 和 zookeeper 的区别吗?
  9. mft按钮设计_奥林巴斯M4/3系统新品激情再燃 以轻量化设计铸就微单极致体验
  10. android开发 修改标题栏背景_移动开发整体凉凉的背景下,究竟还剩哪些 Android热门前沿知识...