php实现爬虫_thinkphp6.0 爬虫-程序员宅基地

技术标签: python  database  django  tornado  php  thinkphp  tp工具  

爬虫技术

简介

目前主流实现爬虫的方法都是使用pathon,但是不一定只有pathon,php也有很多爬虫工具,比如自带的curl,还有querylist,都能实现爬虫,只要能够实现爬数据,不要用什么样的方法都行。

querylist使用

QUERYLIST官方文档,先可以看下文档,熟悉一下,任务框架都可以使用

快速使用

过程很简单,看下文档基本上能够使用,

安装

使用compser安装composer require jaeger/querylist

爬取接口

use QL\QueryList;

public function data(){
	$arr = [   
	 'page' => 10,  
	 'limit' => 1  
	];    //请求参数
	
	$hearders = [  
	 'headers' => [  
	 'token' => 'eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiIxNDEwNDI2MTU0MDM5NDMxMTY5IiwiaWF0IjoxNjI2ODUwMjcwLCJzdWIiOiJkNDkzOTJmNWYyOWI4YjMxNzI0OGEwMmY3MzY3Yjk4NDlhZmRjZGY1IiwiZXhwIjoxNjI5NDQyMjcwfQ.ie5Kw9n3NSz3qPsBNxj30ztBvUUDD0zkOAt-ls8dS2E'  
	 ]  
	];   //设置请求头,根据不同网站设置
	
	$mes = QueryList::get('https://app.shapil.cn/app',$arr,$hearders);  
	$res = json_decode($mes->getHtml(),true); //如果是抓接口,记得encode,
	
	//接下来就看你自己的处理,可以保存到数据库什么的
	// to do something
}


爬取网页

<?php 
	use QL\QueryList; 
	
	//采集某页面所有的图片
	$data = QueryList::get('http://cms.querylist.cc/bizhi/453.html')->find('img')->attrs('src'); 
	
	//打印结果
	print_r($data->all());
	
	//采集某页面所有的超链接和超链接文本内容 
	//可以先手动获取要采集的页面源码
	$html = file_get_contents('http://cms.querylist.cc/google/list_1.html'); 
	//然后可以把页面源码或者HTML片段传给QueryList
	$data = QueryList::html($html)->rules([ //设置采集规则 
	// 采集所有a标签的href属性
	'link' => ['a','href'], 
	
	// 采集所有a标签的文本内容
	'text' => ['a','text'] ])->range('li')->query()->getData(); 
	//打印结果
	print_r($data->all());

自动化运行

会爬取数据了,也得知道怎么自动化运行,我刚开始是把它写个接口,后来发现这样不行,接口容易超时,只有通过控制台命令,让他一直执行下去
TP6命令行

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_29974553/article/details/119174370

智能推荐

open CV插件——openCV for Unity 学习教程_unity opencvc-程序员宅基地

文章浏览阅读5.3k次,点赞12次,收藏54次。最新版openCV for Unity 2.3.8下载网址:链接: https://pan.baidu.com/s/1HufPPfRFzK1TIF94ZKkABw 提取码: rrk4学习教程链接:图文教程5-1https://www.jianshu.com/p/09d93a7cc3ed图文教程5-2https://www.jianshu.com/p/e126ee52b717图文教程5-..._unity opencvc

【MATLAB源码-第186期】matlab基于MLE算法的8天线阵列DOA估计仿真,对比粗估计、精确估计输出RMSE对比图。_mle 8天线matlab-程序员宅基地

文章浏览阅读986次,点赞17次,收藏20次。【MATLAB源码-第186期】matlab基于MLE算法的8天线阵列DOA估计仿真,对比粗估计、精确估计输出RMSE对比图。_mle 8天线matlab

vue如何配置服务器端跨域_vue-resource 与服务器端通信及跨域实际应用-程序员宅基地

文章浏览阅读237次。与服务器端通信Vue.js 可以构建一个完全不依赖后端服务的应用,同时也可以与服务端进行数据交互来同步界面的动态更新。Vue 本身并没有提供与服务端通信的接口,但是通过插件的形式实现了基于AJAX、JSONP 等技术的服务端通信。vue-resource 是一个通过 XMLHttpRequest 或 JSONP 技术实现异步加载服务端数据的 Vue 插件,该插件提供了一般的 HTTP 请求接口和 ..._vueresource解决跨域问题

matlab处理.csv或.data数据集_matlab中csv_data是什么意思-程序员宅基地

文章浏览阅读3.6k次,点赞2次,收藏9次。今天做毕设,遇到怎么将从网上下到的csv数据集导入到matlab的问题,找了很多地方,终于找到了我想要的方法。问题的关键是,csv数据集里面有字符串(不是数字字符串,是字母字符串),我需要把字符串处理成数字。第一步:http://www.matlabsky.com/thread-10592-1-1.html (感谢大神的回答) 先打开excel 上栏中的 数据——_matlab中csv_data是什么意思

STM32F103RCT6智能小车用CCD模块的循迹测评_ccd摄像头循迹小车-程序员宅基地

文章浏览阅读2.9k次,点赞12次,收藏96次。之前在B站冲浪,看到了有智能小车采用CCD线性模块进行循迹功能。那它和红外循迹模块TCRT5000以及灰度循迹模块有什么不同呢?为了满足好奇心,也本着实践是唯一真理,我决定买回来试一下。_ccd摄像头循迹小车

libusb 和 usbutils 的交叉编译_usbutils 在哪里下载-程序员宅基地

文章浏览阅读1.6k次。libusb 下载地址:https://sourceforge.net/projects/libusb/usbutils 下载地址:https://mirrors.edge.kernel.org/pub/linux/utils/usb/usbutils/我使用的是libusb-1.0.22 和usbutils-005libusb 交叉编译:./configure CC..._usbutils 在哪里下载

随便推点

PySide6 QMainWindow主窗口调用编写的仪表盘控件_python pyside6 qwidget 上绘制仪表-程序员宅基地

文章浏览阅读264次。Pyside6制作的仪表盘_python pyside6 qwidget 上绘制仪表

文献分享十一:(经典)Modulation-format-free bias control tech for MZM based on differential phasor monitor-程序员宅基地

文章浏览阅读64次。通信原理中星座图详解_星座图通信原理-程序员宅基地由于目前还没有关于高阶调制格式如QAM信号的自动偏置控制器的报道,而在该技术中,通过计算理想相量与不适当偏置条件下相量之差来获得用于偏置控制的反馈信号。因此,这种技术可以应用于任何调制格式。实际测试中,采用该技术获得的20 gb /s QPSK信号的误码率(BER)与手动优化LiNbO3调制器工作条件获得的误码率几乎相同。(QAM也一样)二、

scipy生态系统_软件生态系统scipy包括-程序员宅基地

文章浏览阅读152次。科学生态系统Python 中的科学计算建立在一小个包的核心之上: Python,一种通用编程语言。它被解释和动态键入,非常适合交互式工作和快速原型,同时强大到足以写大应用程序。 数字计算的基本包NumPy。它定义了数字阵列和矩阵类型以及它们的基本操作。 SciPy 库是数值算法和域特定工具箱的集合,包括信号处理、优化、统计等。 Matplotlib是一个成熟且受欢迎的绘图包,提供出版物质量的二维绘图以及基本的 3D 绘图。 在此基础上,SciPy 生态系统包括用于_软件生态系统scipy包括

python意外缩进怎么修改_意外缩进怎么解决?-程序员宅基地

文章浏览阅读2.5k次。Python在行的开头使用空格来确定代码块的开始和结束时间。你可以获得的错误是:意外缩进。这行代码的开头比以前的空格多,但是前面的不是子块的开头(例如if / while / for语句)。块中的所有代码行必须以完全相同的空白字符串开头。例如:>>> def a():... print "foo"... print "bar"IndentationError: unexpected i..._python意外缩进怎么修改

微型计算机原理作业,微型计算机原理作业第一章习题与思考题.doc-程序员宅基地

文章浏览阅读180次。微型计算机原理作业第一章习题与思考题第一章 习题与思考题一、填空题:计算机一般由 、 、 、 和 五部分组成。机器语言是 。汇编语言是 。高级语言是 ..._单纯的微处理器和单纯的微型计算机都能独立工作

【GRU时序预测】基于双向门控循环单元Bi-GRU实现质量预测附matlab代码-程序员宅基地

文章浏览阅读103次。作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。 ????个人主页:Matlab科研工作室????个人信条:格物致知。更多Matlab仿真内容点击????智能优化算法 神经网络预测 雷达通信 无线传感器 电力系统信号处理 ..._bi-gru代码

推荐文章

热门文章

相关标签