scrapyd部署爬虫项目

项目的环境

windows10系统

python版本:3.6.5

1.安装scrapy项目需要使用到的包 -- scrapyd

打开cmd命令行,输入pip install scrapyd ,回车

安装完成,如果想要查看所有的包中是否有scrapyd包,输入pip list ,回车

确定安装完成后,输入scrapyd可以启动scrapyd服务

启动服务后不要关闭cmd命令工具,在浏览器地址栏输入127.0.0.1:6800,可以看到

此时说明服务器已连接成功!!!!

2.在非C盘下新建一个文件夹,名称自定义。

如果连接成功后可以先关闭服务,因为这个服务只能打开一次,如果再打开一次, 会报错如下:

如新建的文件夹名称为ScrapydTest,然后进入该文件夹,shift+鼠标右键,win7系统可以直接点击 在此处打开命令窗口,win10系统先点击在此处打开Powershell窗口,然后输入start cmd,就可以进入cmd命令窗口了。

 在cmd命令窗口输入scrapyd,回车,再一次打开服务,此时会在ScrapydTest文件夹下生成一个叫dbs的空文件夹,这个文件夹用来存放爬虫项目的数据文件。

3.安装scrapyd-client模块。

scrapyd-client模块是专门打包scrapy爬虫项目到scrapyd服务中的,在cmd命令窗口执行命令pip install scrapyd-client,

安装完成后,在你使用的python文件夹下Scripts文件夹下会生成一个scrapyd-deploy无后缀(即无文件扩展名)的文件,这个scrapyd-deploy无后缀文件是启动文件,在Linux系统下可以运行,在windows下是不能运行的,所以我们需要编辑一下使其在windows下可以运行。

在此文件夹下新建一个scrapyd-deploy.bat文件,鼠标右键选择编辑,输入以下配置,注意:两个路径之间是空格,一定要使用双引号。单引号的话会报错。

@echo off

"C:\Users\qianzhen\Envs\scrapySpider\Scripts\python.exe" "C:\Users\qianzhen\Envs\scrapySpider\Scripts\scrapyd-deploy" %1 %2 %3 %4 %5 %6 %7 %8 %9

我的路径如下:

 

4.测试scrapyd-deploy是否可以运行

进入到你的爬虫项目中,在你的爬虫项目文件夹下一级文件可以看到scrapy.cfg文件,在此处打开命令行窗口,执行命令scrapyd-deploy,测试scrapyd-deploy打包是否可以运行,如果出现以下情况则正常。

5.修改爬虫项目中的scrapy.cfg文件

打开爬虫项目中的scrapy.cfg文件,这个文件就是给scrapyd-deploy使用的,将url这行代码解掉注释,并且设置你的部署名称。

6.再次执行scrapyd-deploy -l 启动服务,可以看到设置的部署名称。

 7.执行scrapy list

开始打包前,执行一个命令:scrapy list,这个命令执行成功说明可以打包了,如果没有执行成功说明还有工作没有完成。

注意:执行scrapy list命令的时候很有可能出现错误,如果是python无法找到scrapy项目,需要在scrapy项目里的settings.py配置文件里设置成python可识别路径。

# 将当前项目的一级目录ivsky_spider目录添加到python可以识别的目录中

BASE_DIR = os.path.dirname(os.path.abspath(os.path.dirname(__file__)))

sys.path.insert(0,os.path.join(BASE_DIR, 'ivsky_spider'))

如果错误提示,什么远程计算机拒绝,说明你的scrapy项目有链接远程计算机,如链接数据库或者elasticsearch(搜索引擎)之类的,需要先将链接服务器启动。

如果执行命令scrapy list 返回了爬虫的名称,说明我们的项目可以继续下去了。爬虫名称如下图:

8.打包scrapy爬虫项目到scrapyd服务

到此我们就可以打包scrapy爬虫项目到scrapyd服务了,用命令结合scrapy爬虫项目中的scrapy.cfg文件设置来打包。

执行打包命令:scrapyd-deploy 部署名称 -p 项目名称

例如:scrapyd-deploy xcy -p ivsky_spider

如下显示表示scrapy爬虫项目打包成功

此时你的ScrapydTest文件夹下会生成一个egg文件夹,里面有你的项目文件夹。

如果出现:

 可能是scrapyd版本不对,建议安装pip install scrapyd==1.1.1,直到你的egg文件夹中有爬虫项目即可。

9.发送请求,运行爬虫项目

运行爬虫:curl http://localhost:6800/schedule.json -d project=项目名称 -d spider=爬虫名称

例如执行命令后,如果出现:

则爬虫运行成功。

可以在浏览器的地址栏中输入127.0.0.1:6800查看爬虫运行的状态。

可以点击Running里面的log日志查看爬虫运行的过程。

 

10.拓展一些关于scrapyd服务的命令

停止爬虫:curl http://localhost:6800/cancel.json -d project=scrapy 项目名称 -d job=运行ID

待续。。。。。。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值