QueryList 是一款用于网页采集爬虫的框架,官方最新版本为QueryList4,QueryList4版本只能在PHP7以上使用;

在PHP7以上环境中,如何在ThinkPHP5中使用QueryList4 ,开发者也给出了教程。对于PHP5环境,只能使用QueryList3,官网给出的ThinkPHP中使用QueryList3的教程,是基于ThinkPHP3.2.3。目前我们用的基本为ThinkPHP5为主,包括ThinkCMF fastAdmin 也都是基于ThinkPHP5的,虽然使用并不复杂,对于刚上手的同学可能会遇到问题,这里写出来以供参考。

PHP7以上安装步骤
下载TP5
去ThinkPHP官网下载最新的ThinkPHP5框架代码: http://www.thinkphp.cn

安装QueryList
在ThinkPHP5代码根目录执行composer命令安装QueryList:

composer require jaeger/querylist
使用QueryList
下面演示在Index控制器中使用QueryList:

<?php
namespace app\index\controller;
 
use QL\QueryList;
 
class Index
{
    public function index()
    {
       //采集某页面所有的图片
       $data = QueryList::get('http://cms.querylist.cc/bizhi/453.html')->find('img')->attrs('src');
       //打印结果
       print_r($data->all());
    }
}
PHP5中,ThinkCMF安装QueryList3步骤
下载QueryList3
QueryList下载地址:https://github.com/jae-jae/QueryList/tree/V3.2.1

phpQuery下载地址:https://github.com/jae-jae/phpQuery-single

下载`QueryList.php`和`phpQuery.php`这两个文件

在ThinkCMF中使用QueryList3
修改QueryList源码,加上下面这句话:

require 'phpQuery.php';
在` www/ThinkCMF/simplewind/extend`下新建`QL`目录,将下载好的`QueryList.php`和`phpQuery.php`这两个文件复制到该目录。

目录结构:

ThinkCMF
└── simplewind
    ├── extend
    │   ├── QL
    │   │   ├── phpQuery.php
    │   │   └── QueryList.php
使用
use QL\QueryList;
 
public function index() {
   //采集某页面所有的超链接
      $d = QueryList::Query('http://cms.querylist.cc/bizhi/453.html',['link' => ['a','href']])->data;
      //打印结果
      print_r($d);
 
 
}
 
--------------------- 
版权声明:本文为CSDN博主「丁汤汤」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/u010035608/article/details/83118391

ThinkPHP5在PHP7以上使用QueryList4, ThinkCMF在PHP5中使用QueryList3教程的更多相关文章

  1. PHP7 学习笔记(二)PHP5.9 升级到PHP7 遇到的一些坑的记录(php-fpm 图解)

    apache_event_php-fpm 示意图: nginx-php-fpm示意图: Worker-Master-Server TCP-Nginx_PHP Nginx-FastCGI 1.使用$_G ...

  2. thinkphp5 tp5 与 nginx 搭配在根目录和子目录中如何设置伪静态

    配置文件参考一下: location /public/ { if (!-e $request_filename){ rewrite ^/public/(.*)$ /public/index.php?s ...

  3. ThinkPHP5 利用.htaccess文件的 Rewrite 规则隐藏URL中的 index.php

    1.首先修改Apache的httpd.conf文件. 确认httpd.conf配置文件中加载了mod_rewrite.so 模块,加载的方法是去掉mod_rewrite.so前面的注释#号 讲http ...

  4. php5和php7的异常处理机制 ----thinkphp5 异常处理的分析

    1.php异常和错误 在其他语言中,异常和错误是有区别的,但是PHP,遇见自身错误时,会触发一个错误,而不是跑出异常.并且,php大部分情况,都会触发错误,终止程序执行,在php5中,try catc ...

  5. thinkcmf安装教程与目录结构详解 快速上手版

    最近接了一个建站项目,要求用thinkcmf来搭建,ytkah在想php都大致一样吧,快速地下载安装包,可是!怎么安装呢?没看到安装指引文件或目录,查看了安装说明public目录做为网站根目录,入口文 ...

  6. mysql_connect() php7不支持,php5.5可以,是废弃函数

    天用了PHP7,发现和PHP5变化还挺大的,最大的就是MySQL的连接库变了. PHP5中使用mysql_connect()函数进行连接,但实际上,PHP5.5开始,MySQL就不推荐使用了,属于废弃 ...

  7. php7安装及配置

    一.下载php-7.0.5http://cn2.php.net/distributions/php-7.0.5.tar.gz 二.解压安装:# tar zxvf php-7.0.5.tar.gz# c ...

  8. vagrant系列教程(三):vagrant搭建的php7环境(转)

    原文:http://blog.csdn.net/hel12he/article/details/51107236 前面已经把vagrant的基础知识已经基本过了一遍 了,相信只要按着教程来,你已经搭建 ...

  9. PHP7革新与性能优化

    有幸参与2015年的PHP技术峰会(PHPCON),听了鸟哥(惠新宸)的关于PHP7的新特性和性能优化的分享,一切都令人感到激动.鸟哥是国内最权威的PHP专家,他的分享有很多非常有价值的东西,我通过整 ...

随机推荐

  1. 125、TensorFlow计算图的执行

    # TensorFlow使用tf.Session类来表示客户端程序之间的链接 # 虽然一个在其他语言中相似的接口也是可以使用的,列如C++ runtime # 一个tf.Session对象提供了访问本 ...

  2. 【SQL SERVER】常见问题

    [账户] 偷懒默认安装了全部默认功能到虚拟服务器上,所以并没有设置sa账户的过程,自然只能从windows身份验证进入数据库.于是还得自己来为sa账户添加登陆权限. 步骤如下: 1. windows身 ...

  3. npm install 安装不成功,提示python2.7

    npm install 安装不成功的原因 是因为缺少python的环境 解决方法: 1.去官网下载https://www.python.org/download/releases/2.7/ 2.安装成 ...

  4. IsAjaxRequest

    具体来说,IsAjaxRequest代码可以分解为以下功能: public static bool IsAjaxRequest(this HttpRequestBase request) { if ( ...

  5. C++ STL:优先队列的使用详解

    堆是一个很重要的数据结构,那么我们如何更加简洁的去写大根/小根堆呢? 对于很多语言来说,只能一步一步手打,但是对于C++来说,写大根小根堆就简便得多,因为C++中有一个容器叫做priority_que ...

  6. Recurrent Neural Network(3):LSTM Basics and 《Inside Out》

    下图是Naive RNN的Recurrent Unit示意图,可以看到,在每个时间点t,Recurrent Unit会输出一个隐藏状态ht,对ht加工提取后将产生t时刻的输出yt.而在下一个时间节点t ...

  7. Web控件LinkButton

    <asp:LinkButton ID="" runat="server" ></asp:LinkButton> 编译后就变成了回发事件 ...

  8. 二叉树BinTree4种遍历及其应用

    前序遍历 template<class T> void BinTree<T>::PreOrder(BinTreeNode<T>*subTree){ //前序遍历以s ...

  9. [原]Threads vs Processes in Linux 分析

    Linux中thread (light-weighted process) 跟process在實作上幾乎一樣. 最大的差異來自於,thread 會分享 virtual memory address s ...

  10. CodeChef Count Substrings

    Count Substrings   Problem code: CSUB   Submit All Submissions   All submissions for this problem ar ...