如何使用scrapyd部署爬虫项目

功能:相当于一个服务器,用于将自己本地的爬虫代码,打包上传到服务器上,让这个爬虫在服务器上运行,可以实现对爬虫的远程管理。(远程启动爬虫、关闭爬虫、查看爬虫的一些日志)

1.scrapyd的安装:在cmd中,输入指令

pip install scrapyd

2.安装服务与客户端

a>scrapyd提供了一个客户端工具,就是scrapyd-client,使用这个工具对scrapyd这个服务进行操作,比如:向scrapyd服务打包上传项目。scrapyd-client类似于redis-cli.exe、MongoDB数据库的client。
scrapyd-client下载地址:https://github.com/scrapy/scrapyd-client

b>pip install scrapyd-client=1.2.0a1

注意:服务端scrapyd(默认版本1.2)和客户端scrapyd-client(默认版本1.1)安装的版本一定要一致

3.安装完服务与客户端之后,启动scrapyd,直接在cmd中输入scrapyd就可以启动了,服务启动之后不要关闭cmd窗口
如何使用scrapyd部署爬虫项目_第1张图片

然后打开浏览器访问网址127.0.0.1:6800,出现以下页面表示成功启动scrapyd服务:
如何使用scrapyd部署爬虫项目_第2张图片

4.配置爬虫项目,完成之后,再通过addversion.json进行打包。
如何使用scrapyd部署爬虫项目_第3张图片

修改scrapy.cfg文件:
如何使用scrapyd部署爬虫项目_第4张图片

5.上述的scrapyd服务窗口cmd不要关闭,再新开一个cmd窗口,用于连接scrapyd服务
a>进入项目根目录,输入scrapyd-deploy命令,查看scrapyd-client客户端是否能使用
如何使用scrapyd部署爬虫项目_第5张图片

b>查看当前可用于打包上传的爬虫项目
在这里插入图片描述

c>使用scrapyd-deploy命令打包上传项目;
命令:Scrapyd-deploy bole -p jobbolespider
参数:
Status: “ok”/”error” 项目上传状态
Project: 上传的项目名称
Version: 项目的版本号,值是时间戳
Spiders: 项目Project包含的爬虫个数
如何使用scrapyd部署爬虫项目_第6张图片

d>通过API接口,查看已经上传至scrapyd服务的项目;
命令:curl http://localhost:6800/listprojects.json
键值:
Projects: [ ] 所有已经上传的爬虫项目,都会显示在这个 列表中。
在这里插入图片描述

e>通过api接口,查看某一个项目中的所有爬虫名称;
命令:curl http://localhost:6800/listspiders.json?project=jobbolespider
在这里插入图片描述

注意:如果项目上传失败,需要先将爬虫项目中打包生成的文件删除(build、project.egg-info、setup.py),然后再重新打包上传。

f>通过api接口,启动爬虫项目
命令:curl http://localhost:6800/schedule.json -d project="爬虫项目名称" -d spider="项目中某一个爬虫名称"
键值:
Jobid: 是根据项目(jobbolespider)和爬虫(bole)生成的一个id,将来用于取消爬虫任务。
在这里插入图片描述

g>如果上传的项目无法运行,在本地调整代码之后,需要重新打包上传,将失效的项目删除
命令:curl http://localhost:6800/delproject.json -d project=jobbolespider
在这里插入图片描述

h>通过api接口,取消爬虫任务;
参数:
Jobid:启动爬虫的时候分配的
在这里插入图片描述
在这里插入图片描述

你可能感兴趣的:(如何使用scrapyd部署爬虫项目)