Pyspider的基本使用 -- 入门
简介
- 一个国人编写的强大的网络爬虫系统并带有强大的WebUI
- 采用Python语言编写,分布式架构,支持多种数据库后端,强大的WebUI支持脚本编辑器,任务监视器,项目管理器以及结果查看器
- 官方文档:http://docs.pyspider.org/en/latest/
安装
- pip install pyspider
- 安装失败的解决方法
启动服务
- 命令窗口输入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