使用scrapyd部署爬虫项目

·  阅读 1884
使用scrapyd部署爬虫项目

Scrapy爬虫项目部署

(scarpy是一个爬虫框架, 而scrapyd是一个网页版管理scrapy的工具, scrapy爬虫写好后,可以用命令行运行,但是如果能在网页上操作就比较方便. scrapyd就是为了解决这个问题,能够在网页端查看正在执行的任务,也能新建爬虫任务,和终止爬虫任务,功能比较强大.。要将spider部署到Scrapyd,可以使用由Scrapyd客户端包提供的Scrapyd -deploy工具。) 注意以下几个问题:

1、scrapy是什么? 一个爬虫框架,你可以创建一个scrapy项目

2、scrapyd是什么? 相当于一个组件,能够将scrapy项目进行远程部署,调度使用等

因此scrapyd可以看作一个cs(client-server)程序,因此毫无疑问我们需要安装和配置scrapyd(server)和连接的scrapy-client(client)。

(1)实现项目部署前的准备(安装相关库)

1.scrapyd库的安装: 命令:pip install scrapyd
安装成功的现象:输入scrapyd,scrapyd带有一个最小的Web界面,启动后,通过访问http://localhost:6800。如下图: 在这里插入图片描述

2.scrapyd-client库的安装: 命令:pip install scrapyd-client
安装成功现象:到scrapy项目下面 输入scrapyd-deploy 出现:Unknown target: default

(2)修改scrapy.cfg文件:

# Automatically created by: scrapy startproject
#
# For more information about the [deploy] section see:
# https://scrapyd.readthedocs.io/en/latest/deploy.html

[deploy:spider55]                   #1.部署名称,可写可不写!
url = http://localhost:6800/      #2.url必须有,可以是远程服务器
project = douban                  #3.项目名称(不能删除)
username=cool					  #访问服务器所需的用户名和密码(可不写)
password=123456
复制代码

执行命令发现设置成功: 命令:scrapyd-deploy -l 作用:查看设置的部署名称和url 在这里插入图片描述

(3)执行打包命令:(在有scrapy.cfg的目录下)

{部署操作会打包你当前项目。从返回的结果里面,可以看到部署的状态,项目名称,版本号和爬虫个数,以及当前主机名称。}

#				部署名称     项目名称
scrapyd-deploy spider55 -p douban

#效果:
'''
出现  {"node_name": "YNRBYA8RP4AT92A", "status": "ok", "project": "douban", "version": "1588083324", "spiders": 2}
'''
复制代码

(4)启动爬虫:

#启动爬虫命令:								     项目名称 		 爬虫名称
curl http://localhost:6800/schedule.json -d project=douban   -d spider=db   

#注意:启动爬虫之后一定要立马往数据库里写入起始url: 
lpush db:start_urls https://movie.com/top250

#启动爬虫之后控制台输出:
{"node_name": "YNRBYA8RP4AT92A", "status": "ok", "jobid": "16903afa895b11ea886298fa9b72ce54"}

复制代码

现在就可以在网页中查看想要看到的一些日志信息等

scrapyd的web界面比较简单,主要用于监控,所有的调度工作全部依靠接口实现. 官方文档: scrapyd.readthedocs.io/en/latest/a…

(5)关闭爬虫:

#关闭爬虫命令:								项目名称 					在网页中的job里的job的id值,如下图:
curl http://localhost:6800/cancel.json -d project=douban -d job=4fc26e4209da11e9b344000c292b8398

复制代码

在这里插入图片描述

🔆In The End!

👑有关于Me

个人简介:我是一个硬件出身的计算机爱好者,喜欢program,源于热爱,乐于分享技术与所见所闻所感所得。文章涉及Python,C,单片机,HTML/CSS/JavaScript及算法,数据结构等。

从现在做起,坚持下去,一天进步一小点,不久的将来,你会感谢曾经努力的你!

认真仔细看完本文的小伙伴们,可以点赞收藏并评论出你们的读后感。并可关注本博主,在今后的日子里阅读更多技术文哦~

如有错误或者言语不恰当的地方可在评论区指出,谢谢!
如转载此文请联系我征得本人同意,并标注出处及本博主名,谢谢 !

分类:
后端
标签:
收藏成功!
已添加到「」, 点击更改