php 内容采集_PHP采集插件QueryList实践教学

156fbd4851ef25d9b04f595087b26f09.png

php中文网最新课程

每日17点准时技术干货分享

77a5b65c11182c39e7b4d0e671edafb9.png

e9c12b86008bb0dfd19eea651b2af673.gif

本文为php中文网认证作者:“安安杰尼”投稿,欢迎加入php中文网有偿投稿计划!

一:需求背景

作为一个开发人员,在日常开发中或多或少多会遇到采集的需求,需要采集某个网站的数据、文章等等,同时在还需要对采集到内容进行解析,分类等操作。在解析分类的过程中,大多数PHPer使用正则的方式来分析爬到的数据,增加了难度的同时效率也没有得到提升,用QueryList则可以很简单的结果问题。

二:什么是QueryList?

QueryList是一个基于phpQuery的开源项目,可以让PHPer在采集信息时对内容进行一个类似JQuery的DOM操作,十分简洁方便,贴合平常开发的习惯。

三:下载安装

(1) 环境要求,安装方式有两种,选中以下任意一种都可以。

PHP >= 5.3

(2) 安装方式-使用composer安装

composer require jaeger/querylist:V3.2.1

或者在项目的composer.json文件中加入以下配置,之后composer update

"require" : {  "jaeger/querylist": "^3.2"}

安装完成之后在项目中,直接引入vendor/autoload.php文件,即可直接开始使用

(3) 测试

$html = <<
其它的一些文本
STR; $rules = array( //采集id为one这个元素里面的纯文本内容 'text' => array('#one','text'), //采集class为two下面的超链接的链接 'link' => array('.two>a','href'), //采集class为two下面的第二张图片的链接 'img' => array('.two>img:eq(1)','src'), //采集span标签中的HTML内容 'other' => array('span','html') ); $data = QueryList::Query($html, $rules)->data; var_dump($data);

(4) 安装方式-手动安装

前往Github下载代码https://github.com/jae-jae/QueryL,获取其中的QueryList.php和phpQuery.php这两个文件放到项目中即可

(5) 测试

<?php require 'phpQuery.php';require 'QueryList.php';use QL\QueryList;$hj = QueryList::Query('https://php.cn/',array("url"=>array('.unit h1 a','href')));$data = $hj->getData(function($x){    return $x['url'];});print_r($data);

总结,这个插件下载安装还是很简单的,下期为大家介绍简单的采集文章内容,适合初学者学习,欢迎大家关注,及时收到新课程提醒。

6e2539dc6ecfbdd3850fb1c724b89dba.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值