使用scrapyd部署scrapy爬虫引擎

由于爬虫面对环境的复杂性,通常我们会管理多个scrapy爬虫同时工作,并进行调度,这里我们使用scrapyd部署我们的爬虫。
首先安装部署工具:
pip install scrapyd
然后在本机win7的cmd里,直接可以使用scrapyd命令启动服务。
http://s11/bmiddle/001rxTlvzy7fSyHNWEWba&690
在服务器端使用docker进行部署:
docker pull vimagick/scrapyd
当然也可以自己打包,因为自己本身也需要安装scrapy里引用的依赖包。
#Dockerfile
FROM
WORKDIR
ADD
COPY
COPY
RUN
VOLUME
EXPOSE
CMD
#requirements.txt
scrapyd==1.2
elasticsearch
newspaper3k
scrapy-splash
bs4
pip install scrapyd-client
这个是本地用来把scrapy工程打包并直接发布到服务端的工具。直接把当前目录定位到工程目录,修改scrapy.cfg
[settings]
default = eagle.settings
[deploy]
url = http://IP:6800/
project = eagle
保存,然后在.cfg目录里,直接scrapyd-deploy就会把当前scrapy项目打包,发布到远程服务器上。
curl http://localhost:6800/schedule.json -d project=PROJECT_NAME -d spider=SPIDER_NAME
停止spider的API
curl http://localhost:6800/cancel.json -d project=PROJECT_NAME -d job=JOB_ID
使用scapyd-deploy直接在.cfg目录下部署scrapyd。windows没有这个命令,需要自己的python目录/scripts下加一下scrapyd-deploy.bat。
内容填充为:
@echo off
"C:\python27\python.exe" "C:\python27\Scripts\scrapyd-deploy" %1 %2 %3 %4 %5 %6 %7 %8 %9