Python中Pyspider爬虫框架的基本使用详解


Posted in Python onJanuary 27, 2021

1.pyspider介绍  

     一个国人编写的强大的网络爬虫系统并带有强大的WebUI。采用Python语言编写,分布式架构,支持多种数据库后端,强大的WebUI支持脚本编辑器,任务监视器,项目管理器以及结果查看器。

  • 用Python编写脚本
  • 功能强大的WebUI,包含脚本编辑器,任务监视器,项目管理器和结果查看器
  • MySQL,MongoDB,Redis,SQLite,Elasticsearch ; PostgreSQL与SQLAlchemy作为数据库后端
  • RabbitMQ,Beanstalk,Redis和Kombu作为消息队列
  • 任务优先级,重试,定期,按年龄重新抓取等...
  • 分布式架构,抓取JavaScript页面,Python 2和3等... 

2.pyspider文档

1>中文文档:http://www.pyspider.cn/

2>英文文档:http://docs.pyspider.org/

3.pyspider安装

打开cmd命令行工具,执行命令

pip install pyspider

Python中Pyspider爬虫框架的基本使用详解

出现下图则安装成功

Python中Pyspider爬虫框架的基本使用详解

4.pyspider启动服务,进入WebUI界面

安装pyspider后,打开cmd命令工具,执行命令来启动服务器

pyspider

Python中Pyspider爬虫框架的基本使用详解

出现下图则启动服务成功,默认地址端口为127.0.0.1:5000

Python中Pyspider爬虫框架的基本使用详解

输入地址127.0.0.1:5000,打开WebUI界面

Python中Pyspider爬虫框架的基本使用详解

队列统计是为了方便查看爬虫状态,优化爬虫爬取速度新增的状态统计.每个组件之间的数字就是对应不同队列的排队数量.通常来是0或是个位数.如果达到了几十甚至一百说明下游组件出现了瓶颈或错误,需要分析处理.

新建项目:pyspider与scrapy最大的区别就在这,pyspider新建项目调试项目完全在web下进行,而scrapy是在命令行下开发并运行测试.

组名:项目新建后一般来说是不能修改项目名的,如果需要特殊标记可修改组名.直接在组名上点鼠标左键进行修改.注意:组名改为delete后如果状态为stop状态,24小时后项目会被系统删除.

运行状态:这一栏显示的是当前项目的运行状态.每个项目的运行状态都是单独设置的.直接在每个项目的运行状态上点鼠标左键进行修改.运行分为五个状态:TODO,STOP,CHECKING,DEBUG,RUNNING.各状态说明:TODO是新建项目后的默认状态,不会运行项目.STOP状态是停止状态,也不会运行.CHECHING是修改项目代码后自动变的状态.DEBUG是调试模式,遇到错误信息会停止继续运行,RUNNING是运行状态,遇到错误会自动尝试,如果还是错误会跳过错误的任务继续运行.

速度控制:很多朋友安装好用说爬的慢,多数情况是速度被限制了.这个功能就是速度设置项.rate是每秒爬取页面数,burst是并发数.如1/3是三个并发,每秒爬取一个页面.

简单统计:这个功能只是简单的做的运行状态统计,5m是五分钟内任务执行情况,1h是一小时内运行任务统计,1d是一天内运行统计,all是所有的任务统计.

运行:run按钮是项目初次运行需要点的按钮,这个功能会运行项目的on_start方法来生成入口任务.

任务列表:显示最新任务列表,方便查看状态,查看错误等

结果查看:查看项目爬取的结果.

5.创建pyspider项目

点击上图中的新建项目按钮

Python中Pyspider爬虫框架的基本使用详解

6.创建后的pyspider项目

Python中Pyspider爬虫框架的基本使用详解

Python中Pyspider爬虫框架的基本使用详解

Python中Pyspider爬虫框架的基本使用详解

到此这篇关于Python中Pyspider爬虫框架的基本使用详解的文章就介绍到这了,更多相关Pyspider爬虫框架使用内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python实现的数据结构与算法之双端队列详解
Apr 22 Python
Python中利用sqrt()方法进行平方根计算的教程
May 15 Python
Python的语言类型(详解)
Jun 24 Python
Python数据可视化编程通过Matplotlib创建散点图代码示例
Dec 09 Python
解决python3 json数据包含中文的读写问题
May 10 Python
Python 互换字典的键值对实例
Feb 12 Python
python实践项目之监控当前联网状态详情
May 23 Python
在Django的View中使用asyncio的方法
Jul 12 Python
Python3.7基于hashlib和Crypto实现加签验签功能(实例代码)
Dec 04 Python
使用python模拟高斯分布例子
Dec 09 Python
Python中使用aiohttp模拟服务器出现错误问题及解决方法
Oct 31 Python
Opencv python 图片生成视频的方法示例
Nov 18 Python
Python3 + Appium + 安卓模拟器实现APP自动化测试并生成测试报告
Jan 27 #Python
一个入门级python爬虫教程详解
Jan 27 #Python
python+selenium爬取微博热搜存入Mysql的实现方法
Jan 27 #Python
Python实现网络聊天室的示例代码(支持多人聊天与私聊)
Jan 27 #Python
基于Python的接口自动化unittest测试框架和ddt数据驱动详解
Jan 27 #Python
python实现scrapy爬虫每天定时抓取数据的示例代码
Jan 27 #Python
使用bandit对目标python代码进行安全函数扫描的案例分析
Jan 27 #Python
You might like
使用TinyButStrong模板引擎来做WEB开发
2007/03/16 PHP
基于php split()函数的用法详解
2013/06/05 PHP
如何在PHP中使用正则表达式进行查找替换
2013/06/13 PHP
浅析php中三个等号(===)和两个等号(==)的区别
2013/08/06 PHP
生成随机字符串和验证码的类的PHP实例
2013/12/24 PHP
yii2中dropDownList实现二级和三级联动写法
2017/04/26 PHP
Laravel5.1 框架数据库操作DB运行原生SQL的方法分析
2020/01/07 PHP
Nigma vs Liquid BO3 第一场2.13
2021/03/10 DOTA
带左右箭头图片轮播的JS代码
2013/12/18 Javascript
JavaScript转换二进制编码为ASCII码的方法
2015/04/16 Javascript
javascript关于运动的各种问题经典总结
2015/04/27 Javascript
JavaScript函数的调用以及参数传递
2015/10/21 Javascript
js使用cookie记录用户名的方法
2015/11/26 Javascript
微信小程序学习之数据处理详解
2017/07/05 Javascript
使用pm2自动化部署node项目的方法步骤
2019/01/28 Javascript
JavaScript使用小插件实现倒计时的方法讲解
2019/03/11 Javascript
浅入深出Vue之自动化路由
2019/08/06 Javascript
详解Vue的七种传值方式
2021/02/08 Vue.js
[35:26]DOTA2上海特级锦标赛B组小组赛#2 VG VS Fnatic第三局
2016/02/26 DOTA
python使用socket连接远程服务器的方法
2015/04/29 Python
详解Python操作RabbitMQ服务器消息队列的远程结果返回
2016/06/30 Python
Python爬取三国演义的实现方法
2016/09/12 Python
python利用微信公众号实现报警功能
2018/06/10 Python
解决python测试opencv时imread导致的错误问题
2019/01/26 Python
win8.1安装Python 2.7版环境图文详解
2019/07/01 Python
python找出因数与质因数的方法
2019/07/25 Python
Python 网络编程之UDP发送接收数据功能示例【基于socket套接字】
2019/10/11 Python
python里反向传播算法详解
2020/11/22 Python
zooplus意大利:在线宠物商店
2019/08/07 全球购物
婚前协议书范本
2014/04/15 职场文书
关于运动会广播稿50字
2014/10/18 职场文书
学校政风行风整改方案
2014/10/25 职场文书
丽江古城导游词
2015/02/03 职场文书
幼师大班个人总结
2015/02/13 职场文书
2016年七夕情人节宣传语
2015/11/25 职场文书
SQL Server实现分页方法介绍
2022/03/16 SQL Server