基于ThinkPHP5框架使用QueryList爬取并存入mysql數(shù)據(jù)庫(kù)操作示例
本文實(shí)例講述了基于ThinkPHP5框架使用QueryList爬取并存入mysql數(shù)據(jù)庫(kù)操作。分享給大家供大家參考,具體如下:
QueryList4教程 地址:
https://doc.querylist.cc/site/index/doc/45
在ThinkPHP5代碼根目錄執(zhí)行composer命令安裝QueryList:
composer require jaeger/querylist
如果出現(xiàn) 以下錯(cuò)誤
Loading composer repositories with package information
Updating dependencies (including require-dev)
Authentication required (packagist.phpcomposer.com):
Username:
出現(xiàn)這樣的 情況
使用
composer config -g repo.packagist composer https://packagist.laravel-china.org
下面演示在Index控制器中使用QueryList:
use QL\QueryList; public function qulist(){ $data = QueryList::get('http://maoyan.com/board/4') // 設(shè)置采集規(guī)則 ->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"), // 爬取上映時(shí)間 "releasetime"=>array(".board-wrapper dd .movie-item-info .releasetime","html"), ]) ->query()->getData(); $excel_array=$data->all(); var_dump($excel_array);exit; }
如果沒有錯(cuò)的 則
如果想繼續(xù)抓取下一頁(yè)的數(shù)據(jù) 要根據(jù)規(guī)律來(lái)去
這里我繼續(xù)抓取20頁(yè) 但是沒有那么多就抓取了10頁(yè)的數(shù)據(jù)
public function qulist(){ for($i=0;$i<20;$i++){ $page=$i*10; $data = QueryList::get('http://maoyan.com/board/4?offset='.$page) // 設(shè)置采集規(guī)則 ->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"), // 爬取上映時(shí)間 "releasetime"=>array(".board-wrapper dd .movie-item-info .releasetime","html"), ]) ->query()->getData(); $excel_array=$data->all(); var_dump($excel_array);exit; } }
將數(shù)據(jù)插入到數(shù)據(jù)庫(kù) 詳細(xì)步驟
更多關(guān)于thinkPHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《ThinkPHP入門教程》、《thinkPHP模板操作技巧總結(jié)》、《ThinkPHP常用方法總結(jié)》、《codeigniter入門教程》、《CI(CodeIgniter)框架進(jìn)階教程》、《Zend FrameWork框架入門教程》及《PHP模板技術(shù)總結(jié)》。
希望本文所述對(duì)大家基于ThinkPHP框架的PHP程序設(shè)計(jì)有所幫助。
- thinkphp框架使用JWTtoken的方法詳解
- PHP如何使用JWT做Api接口身份認(rèn)證的實(shí)現(xiàn)
- php實(shí)現(xiàn)JWT(json web token)鑒權(quán)實(shí)例詳解
- PHP JWT初識(shí)及其簡(jiǎn)單示例
- php JWT在web端中的使用方法教程
- php 后端實(shí)現(xiàn)JWT認(rèn)證方法示例
- thinkPHP5使用Rabc實(shí)現(xiàn)權(quán)限管理
- thinkPHP5使用laypage分頁(yè)插件實(shí)現(xiàn)列表分頁(yè)功能
- Thinkphp5框架使用validate實(shí)現(xiàn)驗(yàn)證功能的方法
- thinkphp5使用bootstrapvalidator進(jìn)行異步驗(yàn)證郵箱的示例
- ThinkPHP5框架中使用JWT的方法示例
相關(guān)文章
用 Composer構(gòu)建自己的 PHP 框架之基礎(chǔ)準(zhǔn)備
這篇文章主要介紹了用 Composer構(gòu)建自己的 PHP 框架的基礎(chǔ)準(zhǔn)備工作,其實(shí)就是各種基礎(chǔ)知識(shí),想自己搭建php框架的童鞋可要看仔細(xì)了2014-10-10php 防止表單重復(fù)提交兩種實(shí)現(xiàn)方法
這篇文章主要介紹了php 防止表單重復(fù)提交兩種實(shí)現(xiàn)方法的相關(guān)資料,這里兩種實(shí)現(xiàn)方法一一做了詳細(xì)介紹,需要的朋友可以參考下2016-11-11thinkPHP數(shù)據(jù)查詢常用方法總結(jié)【select,find,getField,query】
這篇文章主要介紹了thinkPHP數(shù)據(jù)查詢常用方法,結(jié)合實(shí)例形式總結(jié)分析了select,find,getField,query等方法進(jìn)行數(shù)據(jù)庫(kù)查詢操作的具體操作步驟與相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2017-03-03Laravel中日期時(shí)間處理包Carbon的簡(jiǎn)單使用
處理日期和時(shí)間需要考慮很多事情,例如日期的格式、時(shí)區(qū)、閏年和天數(shù)各異的月份,自己處理太容易出錯(cuò)了,下面這篇文章主要給大家介紹了關(guān)于在Laravel中日期時(shí)間處理包Carbon的簡(jiǎn)單使用,需要的朋友可以參考下。2017-09-09PHP中abstract(抽象)、final(最終)和static(靜態(tài))原理與用法詳解
這篇文章主要介紹了PHP中abstract(抽象)、final(最終)和static(靜態(tài)),結(jié)合實(shí)例形式分析了PHP中abstract(抽象)、final(最終)和static(靜態(tài))基本功能、原理、用法及相關(guān)操作注意事項(xiàng),需要的朋友可以參考下2020-06-06php 接口與前端數(shù)據(jù)交互實(shí)現(xiàn)示例代碼
本篇文章主要介紹了php 接口與前端數(shù)據(jù)交互實(shí)現(xiàn)示例代碼,主要使用的是php+bootstrap-table+js,具有一定的參考價(jià)值,有興趣的可以了解一下2017-08-08