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 文件重命名工具代码
Jul 26 Python
Python实现在Linux系统下更改当前进程运行用户
Feb 04 Python
Python中逗号的三种作用实例分析
Jun 08 Python
Python字符串拼接的几种方法整理
Aug 02 Python
使用python 3实现发送邮件功能
Jun 15 Python
详解Python with/as使用说明
Dec 13 Python
python文本数据处理学习笔记详解
Jun 17 Python
django多文件上传,form提交,多对多外键保存的实例
Aug 06 Python
Pytorch使用MNIST数据集实现基础GAN和DCGAN详解
Jan 10 Python
在python中修改.properties文件的操作
Apr 08 Python
Python如何使用正则表达式爬取京东商品信息
Jun 01 Python
python使用pymysql模块操作MySQL
Jun 16 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 简单日历实现代码
2009/10/28 PHP
php在线代理转向代码
2012/05/05 PHP
PHP5常用函数列表(分享)
2013/06/07 PHP
PHP中使用CURL获取页面title例子
2015/01/07 PHP
smarty学习笔记之常见代码段用法总结
2016/03/19 PHP
jQuery 源码分析笔记(3) Deferred机制
2011/06/19 Javascript
jquery实现动态改变div宽度和高度
2015/05/08 Javascript
javascript文件加载管理简单实现方法
2015/07/25 Javascript
js与jquery正则验证电子邮箱、手机号、邮政编码的方法
2016/07/04 Javascript
js生成随机数方法和实例
2017/01/17 Javascript
vue-loader教程介绍
2017/06/14 Javascript
原生js jquery ajax请求以及jsonp的调用方法
2017/08/04 jQuery
使用javaScript实现鼠标拖拽事件
2020/04/03 Javascript
Angularjs添加排序查询功能的实例代码
2017/10/24 Javascript
express+mockjs实现模拟后台数据发送功能
2018/01/07 Javascript
浅谈Vue2.0中v-for迭代语法的变化(key、index)
2018/03/06 Javascript
angularjs性能优化的方法
2018/09/05 Javascript
vue router 源码概览案例分析
2018/10/09 Javascript
[28:05]完美世界DOTA2联赛循环赛Inki vs DeMonsTer 第一场 10月30日
2020/10/31 DOTA
python通过自定义isnumber函数判断字符串是否为数字的方法
2015/04/23 Python
用Python中的字典来处理索引统计的方法
2015/05/05 Python
对python list 遍历删除的正确方法详解
2018/06/29 Python
python文件操作之批量修改文件后缀名的方法
2018/08/10 Python
django如何连接已存在数据的数据库
2018/08/14 Python
python使用thrift教程的方法示例
2019/03/21 Python
Python使用crontab模块设置和清除定时任务操作详解
2019/04/09 Python
有趣的Python图片制作之如何用QQ好友头像拼接出里昂
2020/04/22 Python
浅谈TensorFlow之稀疏张量表示
2020/06/30 Python
python在地图上画比例的实例详解
2020/11/13 Python
Autopep8的使用(python自动编排工具)
2021/03/02 Python
python 制作磁力搜索工具
2021/03/04 Python
HTML5实现音频和视频嵌入的方法
2018/08/22 HTML / CSS
Bjorn Borg官方网上商店:国际运动时尚品牌
2016/08/27 全球购物
团员个人总结
2015/02/26 职场文书
《悬崖边的树》读后感2篇
2019/12/02 职场文书
el-table-column 内容不自动换行的解决方法
2022/08/14 Vue.js