php采集器QueryList V3的实例运用介绍_成都网站搭建
要实现php插件QueryList V3采集器的功能,首先就是要下载phpQuery.php和QueryList.php,我们使用的是tp3.2,所以把这两个文件放到如下图所示的位置:然后在控制器上,使用vendor(Caiji.phpQuery);vendor(Caiji.QueryList);引入这两个文件,然后使用命名空间use QL\QueryList;引入QueryList类,如下图所示:然后使用QueryList::方法名,即可调用QueryList类的方法,如下图所示,我们来采集一个网址:$html是我们要采集的一个网址,我们打开这个页面,如下图:然后查看这个页面的源代码,如下所示:上面的源代码划红圈的位置,我们需要采集的是网页的URL,标题,图片三个参数,这样QueryList采集器的规则如下:$rules = array(url=array(.all ul li a,href),title=array(.all ul li a .news-wrap p,text),picture=array(.img-wrap img,data-echo));这个就是在这个页面里,获取url,title,picture这三个参数的匹配到符合条件的数组,至于这个规则为何这样写,可以自行查看QueryList V3的开发文档,这里不再赘述,然后使用$data_list = QueryList::Query($html,$rules)-data;执行采集程序,就能获取到如下数组:....这样就可以对数组进行处理了,首先我们注意到这个图片的路径是远程的绝对地址,如果直接存到数据库表中,随时可能因为某种原因打开,所以就需要把图片保存到服务器上,所以需要运用到以下方法:$file_url 是远程的图片地址,如上面数组的picture的路径,$save_to是服务器上要保存的文件地址,如 $save_to = Uploads/caiji/123.jpg;这样通过$this-dlfile($file_url, $save_to)调用这个方法后即可保存图片,这样图片的地址就能转换成服务器上的相对地址或根目录地址了。以上是对QueryList V3的实例运用介绍,其实还有很多比较实用的技巧没讲,例如内容过滤,获取内容乱码如何解决等。如果有时间下次再讲一下把采集数据处理,先采集列表页面,再通过列表的链接采集到文章页面,再把它保存到数据库中的处理过程。
php采集器QueryList V3的实例运用介绍_成都网站搭建 https://cdnanqi.cn/wangzhanzhizuo/11112.html