Pyspider的基本使用 -- 入门

谁都会走 提交于 2020-01-01 16:17:47

简介

  • 一个国人编写的强大的网络爬虫系统并带有强大的WebUI
  • 采用Python语言编写,分布式架构,支持多种数据库后端,强大的WebUI支持脚本编辑器,任务监视器,项目管理器以及结果查看器
  • 官方文档:http://docs.pyspider.org/en/latest/

安装

启动服务

  • 命令窗口输入pyspider


打开Web界面

  • 浏览器输入localhost:5000


创建项目



删除项目

  • 删除某个:设置 group 为 delete ,status 为 stop ,24小时之后自动删除
  • 删除全部:在启动服务的路径下,找到它自己生成的data目录,直接删除目录里的所有文件



禁止证书验证

  • 加上参数 validate_cert = False


使用方法

  • on_start(self)
    • 入口方法,run的时候,默认会调用
  • crawl()
    • 生成一个新的爬取请求,类似于scrapy.Request,接受的参数是ur1和callback
  • @every(minutes=2, seconds=30) 
    • 告诉scheduler两分30秒执行一次
  • @config(age=10 * 24 * 60 * 60)
    • 告诉调度器(单位:秒)、这个请求过期时间是10天、10天之内不会再次请求
  • @config(priority=2)
    • 优先级、数字越大越先执行

执行任务

  • 完成脚本编写,调试无误后,先save脚本,然后返回到控制台首页
  • 直接点击项目状态status那栏,把状态由TODO改成DEBUG或RUNNING
  • 最后点击项目最右边的Run按钮启动项目

对接phantomjs

  • phantomjs.exe放在Python环境根目录下,或者将所在目录添加到系统的环境变量
  • 添加成功,启动服务时,会显示如下信息


没使用js渲染



使用js渲染

  • 添加参数 fetch_type = 'js'


其它

  • rate/burst
    • rate:一秒钟执行的请求个数
    • burst:并发的数量
    • 例如:2/5、每秒两个请求,并发数量为5,即每秒10个请求
  • 设置渲染的web页面的高度
    • 在源代码里修改css样式即可(#tab-web iframe)
    • css文件路径:python安装目录下 Lib\site-packages\pyspider\webui\static 里的 debug.min.css




标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!