scrapyd是一个用于部署和运行scrapy爬虫的程序,它允许你通过JSON API来部署爬虫项目和控制爬虫运行
scrapyd是一个守护进程,监听爬虫的运行和请求,然后启动进程来执行它们
安装扩展
pip install scrapyd
pip install scrapyd-client
 
首先修改项目的 scrapy.cfg 文件
原始内容为
[deploy]
#url = http://localhost:6800/
project = funsion
 
修改为
[deploy:funsion]
url = http://localhost:6800/
project = funsion
 
scrapyd部署的核心三步骤(蓝色加粗内容)
执行 nohup scrapyd > /dev/null 2>&1 &
 
检查配置, 列出当前可用的服务器 scrapyd-deploy -l

列出服务器上所有的项目, 需要确保服务器上的scrapyd命令正在执行,否则会报连接失败.首次运行的话,可以看到只有一个default项目
scrapyd-deploy -L funsion
 
在爬虫项目根目录下执行下面的命令, 其中target为上一步配置的服务器名称,project为项目名称,可以根据实际情况自己指定。
用法 scrapyd-deploy <target> -p <project>

在项目根目录下输入 scrapyd-deploy funsion -p funsion
得到以下结果
Packing version 1496109534
Deploying to project "funsion" in http://localhost:6800/addversion.json
Server response (200):
{"status": "ok", "project": "funsion", "version": "1496109534", "spiders": 1, "node_name": "localhost.localdomain"}

部署操作会打包你的当前项目,如果当前项目下有setup.py文件,就会使用它,没有的会就会自动创建一个。
如果后期项目需要打包的话,可以根据自己的需要修改里面的信息,也可以暂时不管它。
从返回的结果里面,我们可以看到部署的状态,项目名称,版本号和爬虫个数,以及当前的主机名称
检查部署结果 scrapyd-deploy -L funsion

 
调度爬虫,在项目根目录下
curl http://localhost:6800/schedule.json -d project=funsion -d spider=funsion
 
如果配置了多个服务器的话,可以将项目直接部署到多台服务器
scrapyd-deploy -a -p <project>
 
补充说明:
curl http://localhost:6800/listprojects.json    (列出项目)
curl http://localhost:6800/listspiders.json?project=funsion    (列出爬虫)
curl http://localhost:6800/listjobs.json?project=funsion    (列出job)
curl http://localhost:6800/cancel.json -d project=myproject -d job=你的jobId    (取消爬虫)
 
然后访问 http://localhost:6800/jobs 可以查询图像化界面,成功后应该和下图类似
 
更多参考
http://scrapyd.readthedocs.io/en/stable/   (Scrapyd 文档)
 

Scrapyd 项目爬虫部署的更多相关文章

  1. 笔记-爬虫部署及运行工具-scrapydweb

    笔记-爬虫部署及运行工具-scrapydweb 1.      简介 scrapyd是爬虫部署工具,但它的ui比较简单,使用不是很方便. scrapydweb以scrapyd为基础,增加了ui界面和监 ...

  2. scrapy抓取拉勾网职位信息(八)——使用scrapyd对爬虫进行部署

    上篇我们实现了分布式爬取,本篇来说下爬虫的部署. 分析:我们上节实现的分布式爬虫,需要把爬虫打包,上传到每个远程主机,然后解压后执行爬虫程序.这样做运行爬虫也可以,只不过如果以后爬虫有修改,需要重新修 ...

  3. 爬虫部署 --- scrapyd部署爬虫 + Gerapy 管理界面 scrapyd+gerapy部署流程

    ---------scrapyd部署爬虫---------------1.编写爬虫2.部署环境pip install scrapyd pip install scrapyd-client 启动scra ...

  4. Scrapyd 的远程部署和监控

    1. 安装Scrapyd sudo pip3.6 install scrapyd # 安装scrapyd服务 sudo pip3.6 install scrapyd-client # 安装scrapy ...

  5. Scrapyd发布爬虫的工具

    Scrapyd Scrapyd是部署和运行Scrapy.spider的应用程序.它使您能够使用JSON API部署(上传)您的项目并控制其spider. Scrapyd-client Scrapyd- ...

  6. IntelliJ IDEA WEB项目的部署配置

    以下内容是我网上找的比较全面了,其中关于facets配置很多地方都没有说明,其实很重要,我加入了自己的理解.其他来自网络.在导入一个项目有问题时,建议先创建一个正确的web项目,然后对比配置项,一般就 ...

  7. itellij idea导入web项目并部署到tomcat

    概述 主要分为项目配置和tomcat配置两大步骤. 一.项目配置 打开idea,选择导入项 选择将要打开的项目路径后,继续选择项目的原本类型(后续引导设置会根据原本的项目类型更新成idea的项目),此 ...

  8. 在Eclipse for mac中配置tomcat,使web项目自动部署到tomcat

    jdk.tomcat的配置就不多说了,网上一大堆. 一.发现问题 在eclipse中新建Dynamic Web Project,配置好本地的tomcat并写好代码后选择Run on Server,但运 ...

  9. VS2010项目的部署与安装

    VS2010项目的部署与安装 转自:http://www.cnblogs.com/smile-wei/archive/2012/07/06/2579607.html winform程序,我想进行安装. ...

随机推荐

  1. Elasticsearch 中文分词(elasticsearch-analysis-ik) 安装

    由于elasticsearch基于lucene,所以天然地就多了许多lucene上的中文分词的支持,比如 IK, Paoding, MMSEG4J等lucene中文分词原理上都能在elasticsea ...

  2. 不阻塞浏览器的解析,待外部js下载完成后异步执行

    网站统计中的数据收集原理及实现(js埋点实现) - lastwhisper - CSDN博客 https://blog.csdn.net/l1212xiao/article/details/80450 ...

  3. 使用JavaMail发送邮件,465端口开启ssl加密传输

    package com.wangxin.test; import java.security.Security; import java.util.Date; import java.util.Pro ...

  4. CF#301 C:Ice Cave(简单BFS)

    C:Ice Cave 有一个m*n的地图,里面包含'.'表示完整的冰块,'X'表示有裂痕的冰块,当游戏者到达完整的冰块时,这个位置的冰块会变成有裂痕的冰块,如果到达有裂痕的冰块时,游戏者会进入下一关 ...

  5. mac配置python自然语言处理环境

    一.nltk安装 Ⅰ.工具安装步骤 1.根据python版本从 https://pypi.python.org/pypi/setuptools 下载对应版本的setuptools.然后,在终端下运行, ...

  6. 七个可以提升python程序性能的好习惯,你知道吗?

    掌握一些技巧,可尽量提高Python程序性能,也可以避免不必要的资源浪费.今天就为大家带来七个可以提升python程序性能的好习惯,赶快来学习吧:. 1.使用局部变量 尽量使用局部变量代替全局变量:便 ...

  7. centos6.5安装cmake-gui

    首先下载cmake(官网,2.8.12版本) 解压 运行 ./bootstrap --qt-gui make make install 完成后,在/usr/local/bin目录下会出现cmake-g ...

  8. ALV tree标准DEMO

    BCALV_TREE_01 ALV 树控制:构建层次树 BCALV_TREE_02 ALV 树控制:事件处理 BCALV_TREE_03 ALV 树控制:使用自己的上下文菜单 BCALV_TREE_0 ...

  9. XE6移动开发环境搭建之IOS篇(2):安装虚拟机(有图有真相)

    XE6移动开发环境搭建之IOS篇(2):安装虚拟机(有图有真相) 2014-08-15 22:04 网上能找到的关于Delphi XE系列的移动开发环境的相关文章甚少,本文尽量以详细的内容.傻瓜式的表 ...

  10. springBoot 整合 RabbitMQ 的坑

    1.Consumer raised exception, processing can restart if the connection factory supports it. Exception ...