专栏首页python3Python3网络爬虫实战-13、部署相

Python3网络爬虫实战-13、部署相

ScrapydClient的安装

在将 Scrapy 代码部署到远程 Scrapyd 的时候,其第一步就是要将代码打包为 Egg 文件,其次需要将 Egg 文件上传到远程主机,这个过程如果我们用程序来实现是完全可以的,但是我们并不需要做这些工作,因为 ScrapydClient 已经为我们实现了这些功能。 下面我们就来过一下 ScrapydClient 的安装过程。

1. 相关链接

2. Pip安装

推荐使用 Pip 安装,命令如下:

pip3 install scrapyd-client

3. 验证安装

安装成功后会有一个可用命令,叫做 scrapyd-deploy,即部署命令。 我们可以输入如下测试命令测试 ScrapydClient 是否安装成功:

scrapyd-deploy -h

如果出现如图 1-87 类似输出则证明 ScrapydClient 已经成功安装:

图 1-87 运行结果 在后文我们会详细了解它的用法。

ScrapydAPI的安装

安装好了 Scrapyd 之后,我们可以直接请求它提供的 API 即可获取当前主机的 Scrapy 任务运行状况。

如某台主机的 IP 为 192.168.1.1,则可以直接运行如下命令获取当前主机的所有 Scrapy 项目:

curl http://localhost:6800/listprojects.json
Python资源分享qun 784758214 ,内有安装包,PDF,学习视频,这里是Python学习者的聚集地,零基础,进阶,都欢迎

运行结果:

{"status": "ok", "projects": ["myproject", "otherproject"]}

返回结果是 Json 字符串,通过解析这个字符串我们便可以得到当前主机所有项目。

但是用这种方式来获取任务状态还是有点繁琐,所以 ScrapydAPI 就为它做了一层封装,下面我们来看下它的安装方式。

1. 相关链接

2. Pip安装

推荐使用 Pip 安装,命令如下:

pip install python-scrapyd-api

3. 验证安装

安装完成之后便可以使用 Python 来获取主机状态了,所以如上的操作便可以用 Python 代码实现:

from scrapyd_api import ScrapydAPI
scrapyd = ScrapydAPI('http://localhost:6800')
print(scrapyd.list_projects())

运行结果:

["myproject", "otherproject"]
Python资源分享qun 784758214 ,内有安装包,PDF,学习视频,这里是Python学习者的聚集地,零基础,进阶,都欢迎

这样我们便可以用 Python 直接来获取各个主机上 Scrapy 任务的运行状态了。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 在linux下安装并运行scrapyd

    因为我腾讯云上是python2与python3并存的 所以我执行的命令是:pip3 isntall scrapyd

    py3study
  • 经验拾忆(纯手工)=> docker-

    踩了 5-6个小时的坑,各种测试。人要没了。不过结果我已经满意了。 这篇文章是对 https://segmentfault.com/a/11... 的完善与排初...

    py3study
  • Python模拟登录多种实现方式

    py3study
  • 如何用Python做词云?

    临渊羡鱼,不如退而结网。我们步步为营,从头开始帮助你用Python做出第一张词云图来。欢迎尝试哦!

    王树义
  • 在linux ubuntu下搭建深度学习/机器学习开发环境

    一、安装Anaconda 1.下载 下载地址为:https://www.anaconda.com/download/#linux ? ? 2.安装anacond...

    郭耀华
  • 避坑!用Docker搞定PHP开发环境搭建

    因为最近换电脑的缘故需要重新部署一下本地的开发环境,之前采用的虚拟机方案,占用磁盘空间实在是太大,心疼SSD那么点地方,所以这次采用了Docker的方案来部署。...

    猿哥
  • [704]虚拟机debian9.* 安装vm tools

    VMware Tools是VMware虚拟机中自带的一种增强工具,是VMware提供的增强虚拟显卡和硬盘性能、以及同步虚拟机与主机时钟的驱动程序。 在VMwa...

    周小董
  • Selenium - Web Browser Automation, 没有你想象的那么难

    从去年开始接触 selenium,中间间隔了几个月,最近几天又开始使用,在此总结一下这两次使用的经验

    双鬼带单
  • 一步步带你构建Spring Boot + Docker的单体应用

    Spring Boot 是 Spring 社区发布的一个开源项目,旨在帮助开发者快速简单地构建可独立运行的项目。Spring Boot 会选择最适合的 Spri...

    Java架构师历程
  • CVE-2019-16662&16663:rConfig v3.9.2远程命令执行漏洞分析

    rConfig是一款开源的网络设备配置管理实用工具,在rConfig的帮助下,网络工程师可以快速、频繁地管理网络设备的快照。

    FB客服

扫码关注云+社区

领取腾讯云代金券