QueryList V3 中文文档
本文档是一份QueryList入门指南,希望本文档可以为你掌握QueryList的用法提供帮助。
我们有时需要抓取一个网页的内容,但只需要特定部分的信息,通常会用正则来解决,这当然没有问题。正则是一个通用解决方案,但特定情况下,往往有更简单快 捷的方法。比如你想查询一个编程方面的问题,当然可以使用Google,但stackoverflow 作为一个专业的编程问答社区,会提供给你更多,更靠谱的答案。
对于html页面,不应该使用正则的原因主要有3个
1、编写条件表达式比较麻烦
尤其对于新手,看到一堆”不知所云”的字符评凑在一起,有种脑袋都要炸了的感觉。如果要分离的对象没有太明显的特征,正则写起来更是麻烦。
2、效率不高
对于php来说,正则应该是没有办法的办法,能通过字符串函数解决的,就不要劳烦正则了。用正则去处理一个30多k的文件,效率不敢保证。
3、有phpQuery
如果你使用过jQuery,想获取某个特定元素应该是轻而易举的事情,phpQuery让这成为了可能。
phpQuery
在介绍QueryList之前,有必要先来介绍一下phpQuery。
phpQuery是一个用php实现的类似jQuery的开源项目,可以在服务器端以jQuery的语法形式解析网页元素。
基本上jQuery的选择器都可以用在phpQuery上,phpQuery很强大可以对DOM进行任何复杂的操作,而接下来要介绍的QueryList则相当于phpQuery的子集,发挥它采集方面的强大功能。
QueryList
QueryList是一个基于phpQuery的PHP通用列表采集类,得益于phpQuery,让使用QueryList几乎没有任何学习成本,只要会CSS3选择器就可以轻松使用QueryList了,它让PHP做采集像jQuery选择元素一样简单。QueryList的几个特点:
- 学习简单:只有一个核心的API
- 使用简单:用jQuery选择器来选择页面元素
- 自带过滤功能,可过滤掉无用的内容
- 支持无限层级嵌套采集
- 采集结果直接以采集规则以列表的形式有序的返回
- 支持扩展