本文实例讲述了基于ThinkPHP5框架使用QueryList爬取并存入mysql数据库操作。分享给大家供大家参考,具体如下:
QueryList4教程 地址:
https://doc.querylist.cc/site/index/doc/45
在ThinkPHP5代码根目录执行composer命令安装QueryList:
代码语言:javascript复制composer require jaeger/querylist
如果出现 以下错误
Loading composer repositories with package information Updating dependencies (including require-dev) Authentication required (packagist.phpcomposer.com): Username:
出现这样的 情况
使用
代码语言:javascript复制composer config -g repo.packagist composer https://packagist.laravel-china.org
下面演示在Index控制器中使用QueryList:
代码语言:javascript复制use QLQueryList;
public function qulist(){
$data = QueryList::get('http://maoyan.com/board/4')
// 设置采集规则
- rules([
// 爬取图片地址
"src"= array(".board-wrapper dd img.board-img","data-src"),
// 爬取电影名
"name"= array(".board-wrapper dd .movie-item-info .name","html"),
// 爬取电影主演信息
"star"= array(".board-wrapper dd .movie-item-info .star","html"),
// 爬取上映时间
"releasetime"= array(".board-wrapper dd .movie-item-info .releasetime","html"),
])
- query()- getData();
$excel_array=$data- all();
var_dump($excel_array);exit;
}
如果没有错的 则
如果想继续抓取下一页的数据 要根据规律来去
这里我继续抓取20页 但是没有那么多就抓取了10页的数据
代码语言:javascript复制public function qulist(){
for($i=0;$i<20;$i ){
$page=$i*10;
$data = QueryList::get('http://maoyan.com/board/4?offset='.$page)
// 设置采集规则
- rules([
// 爬取图片地址
"src"= array(".board-wrapper dd img.board-img","data-src"),
// 爬取电影名
"name"= array(".board-wrapper dd .movie-item-info .name","html"),
// 爬取电影主演信息
"star"= array(".board-wrapper dd .movie-item-info .star","html"),
// 爬取上映时间
"releasetime"= array(".board-wrapper dd .movie-item-info .releasetime","html"),
])
- query()- getData();
$excel_array=$data- all();
var_dump($excel_array);exit;
}
}
将数据插入到数据库 详细步骤