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中numpy基础学习及进行数组和矢量计算
Feb 12 Python
关于python的bottle框架跨域请求报错问题的处理方法
Mar 19 Python
Python实现的中国剩余定理算法示例
Aug 05 Python
Python3实现抓取javascript动态生成的html网页功能示例
Aug 22 Python
python机器学习之神经网络(三)
Dec 20 Python
Python实现string字符串连接的方法总结【8种方式】
Jul 06 Python
python 定时任务去检测服务器端口是否通的实例
Jan 26 Python
Django自定义模板过滤器和标签的实现方法
Aug 21 Python
解决Tensorflow 内存泄露问题
Feb 05 Python
使用pygame编写Flappy bird小游戏
Mar 14 Python
关于Django Models CharField 参数说明
Mar 31 Python
python中Ansible模块的Playbook的具体使用
May 28 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
深入php多态的实现详解
2013/06/09 PHP
浅谈javascript 归并方法
2015/01/21 Javascript
javascript算法题:求任意一个1-9位不重复的N位数在该组合中的大小排列序号
2015/04/01 Javascript
kindeditor修复会替换script内容的问题
2015/04/03 Javascript
javascript白色简洁计算器
2015/05/04 Javascript
JavaScript实现鼠标点击后层展开效果的方法
2015/05/13 Javascript
轻松学习jQuery插件EasyUI EasyUI实现拖动基本操作
2015/11/30 Javascript
AngularJS使用angular-formly进行表单验证
2015/12/27 Javascript
JS获取IMG图片高宽的简单实例
2016/05/17 Javascript
JS高仿抛物线加入购物车特效实现代码
2017/02/20 Javascript
javascript 网页进度条简单实例
2017/02/22 Javascript
bootstrap折叠调用collapse()后data-parent不生效的快速解决办法
2017/02/23 Javascript
解决jquery的ajax调取后端数据成功却渲染失败的问题
2018/08/08 jQuery
微信小程序使用map组件实现路线规划功能示例
2019/01/22 Javascript
Angular封装搜索框组件操作示例
2019/04/25 Javascript
微信JS-SDK实现微信会员卡功能(给用户微信卡包里发送会员卡)
2019/07/25 Javascript
bootstrap-paginator服务器端分页使用方法详解
2020/02/13 Javascript
Vue 按照创建时间和当前时间显示操作(刚刚,几小时前,几天前)
2020/09/10 Javascript
Antd下拉选择,自动匹配功能的实现
2020/10/24 Javascript
[43:57]Liquid vs Mineski 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/19 DOTA
python读取oracle函数返回值
2016/07/18 Python
python3+PyQt5实现拖放功能
2018/04/24 Python
一条命令解决mac版本python IDLE不能输入中文问题
2018/05/15 Python
python爬取微信公众号文章
2018/08/31 Python
python调用webservice接口的实现
2019/07/12 Python
详解pycharm自动import所需的库的操作方法
2020/11/30 Python
CSS3属性使网站设计增强同时不消弱可用性
2009/08/29 HTML / CSS
VSCode 自定义html5模板的实现
2019/12/05 HTML / CSS
凌阳科技股份有限公司C++程序员面试题笔试题
2014/11/20 面试题
个人自我评价分享
2013/12/20 职场文书
六年级学生期末评语
2014/12/26 职场文书
运动会3000米加油稿
2015/07/21 职场文书
高中军训感想
2015/08/07 职场文书
文艺部部长竞选稿
2015/11/21 职场文书
nginx里的rewrite跳转的实现
2021/03/31 Servers
win10双系统怎么删除一个系统?win10电脑有两个系统删除一个的操作方法
2022/07/15 数码科技