1、什么是scrapyd

  Scrapyd是一个服务,用来运行scrapy爬虫的。

  它允许你部署你的scrapy项目以及通过HTTP JSON的方式控制你的爬虫。

  官方文档:http://scrapyd.readthedocs.org/

2、安装scrapyd和scrapyd-client

  pip install scrapyd(服务器)

  pip install scrapyd-client(客户端)

  安装完成后,在python安装目录的Scripts的文件下有一个scrapyd.exe,在命令行窗口执行后,可以通过访问http://127.0.0.1:6800,进入

一个很简单的页面,

  执行scrapyd这个命令行,表示服务开启了,

  在浏览器中访问这个服务,

  上面表示服务端安装成功,现在来安装测试客户端,安装好后,执行scrapyd-deploy来测试是否安装成功,

执行失败,我们来看一下Python的Scripts下面是否有一个scrapyd-client.exe命令,

从图片中看到里面有一个scrapyd-deploy文件,但不是可执行文件,打开后发现这个文件是一个包含Python代码的文件,所以要是让它

执行,要不用Python解释器来执行这个文件,要不就是把它编译为可执行文件两种方式。

  第一种方式:

    在这个文件夹里创建scrapyd-deploy.bat文件,并在里面输入:

@echo off
C:\Users\\AppData\Local\Programs\Python\Python37-\python.exe C:\Users\\AppData\Local\Programs\Python\Python37-\Scripts\scrapyd-deploy %*

第二行第一个路径是python解释器的绝对路径,第二路径是scrapyd-deploy文件的绝对路径,然后再来执行scrapyd-deploy命令

这样就表明安装成功了

  第二种方式:

    用可以将python源文件编译为scrapyd-deploy.exe可执行程序的模块pyinstaller

3、上传爬虫项目

  在上传之前必须修改一下配置文件,将scrapy.cfg中的url注释掉

注释掉后,就可以开始正式上传了,上传时必须要在爬虫项目文件中,

执行scrapyd-deploy -p <projectname>,并出现下图中“status”:“ok”,表示上传成功,可以在http://127.0.0.1:6800页面验证

4、运行爬虫项目

上传过后就可以在命令行窗口开始启动爬虫了

启动命令:curl http://127.0.0.1:6800/schedule.json -d project=<projectname> -d spider=<spidername>

启动后,就可以看到在开启服务的那个命令行窗口不断出现scrapy项目运行时的数据,在http://127.0.0.1:6800/jobs页面显示

爬虫运行信息,在http://127.0.0.1:6800/logs/页面显示运行日志

5、关闭爬虫项目

关闭命令:curl http://127.0.0.1:6800/cancel.json -d project=<projectname> -d job=<jobid>

6、其它命令:

daemonstatus.json #查看爬虫状态

addversion.json #添加版本号

listprojects.json #列出所有已经上传到服务器的爬虫工程名

listversions.json #列出指定工程的版本号

listspiders.json #列出指定工程的爬虫名

listjobs.json #列出指定工程的所有正在上传的,正在运行的,和已经完成的 jobid

delversion.json #删除指定工程的某个版本

delproject.json #删除工程

  

Python爬虫-scrapyd的更多相关文章

  1. 初识python爬虫框架Scrapy

    Scrapy,按照其官网(https://scrapy.org/)上的解释:一个开源和协作式的框架,用快速.简单.可扩展的方式从网站提取所需的数据. 我们一开始上手爬虫的时候,接触的是urllib.r ...

  2. 一个Python爬虫工程师学习养成记

    大数据的时代,网络爬虫已经成为了获取数据的一个重要手段. 但要学习好爬虫并没有那么简单.首先知识点和方向实在是太多了,它关系到了计算机网络.编程基础.前端开发.后端开发.App 开发与逆向.网络安全. ...

  3. Python 爬虫模拟登陆知乎

    在之前写过一篇使用python爬虫爬取电影天堂资源的博客,重点是如何解析页面和提高爬虫的效率.由于电影天堂上的资源获取权限是所有人都一样的,所以不需要进行登录验证操作,写完那篇文章后又花了些时间研究了 ...

  4. python爬虫成长之路(一):抓取证券之星的股票数据

    获取数据是数据分析中必不可少的一部分,而网络爬虫是是获取数据的一个重要渠道之一.鉴于此,我拾起了Python这把利器,开启了网络爬虫之路. 本篇使用的版本为python3.5,意在抓取证券之星上当天所 ...

  5. python爬虫学习(7) —— 爬取你的AC代码

    上一篇文章中,我们介绍了python爬虫利器--requests,并且拿HDU做了小测试. 这篇文章,我们来爬取一下自己AC的代码. 1 确定ac代码对应的页面 如下图所示,我们一般情况可以通过该顺序 ...

  6. python爬虫学习(6) —— 神器 Requests

    Requests 是使用 Apache2 Licensed 许可证的 HTTP 库.用 Python 编写,真正的为人类着想. Python 标准库中的 urllib2 模块提供了你所需要的大多数 H ...

  7. 批量下载小说网站上的小说(python爬虫)

    随便说点什么 因为在学python,所有自然而然的就掉进了爬虫这个坑里,好吧,主要是因为我觉得爬虫比较酷,才入坑的. 想想看,你可以批量自动的采集互联网上海量的资料数据,是多么令人激动啊! 所以我就被 ...

  8. python 爬虫(二)

    python 爬虫 Advanced HTML Parsing 1. 通过属性查找标签:基本上在每一个网站上都有stylesheets,针对于不同的标签会有不同的css类于之向对应在我们看到的标签可能 ...

  9. Python 爬虫1——爬虫简述

    Python除了可以用来开发Python Web之后,其实还可以用来编写一些爬虫小工具,可能还有人不知道什么是爬虫的. 一.爬虫的定义: 爬虫——网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区 ...

随机推荐

  1. 函数(Python)

    函数是什么? 计算机的函数,是一个固定的一个程序段,或称其为一个子程序,它在可以实现固定运算功能的同时,还带有一个入口和一个出口,所谓的入口,就是函数所带的各个参数,我们可以通过这个入口,把函数的参数 ...

  2. ios 接入微信开发 新版

    首先在服务器所在域名(https://www.test.com)根目录创建apple-app-site-association文件 { "applinks": { "ap ...

  3. bzoj5104 Fib数列(BSGS+二次剩余)

    快AFO了才第一次写二次剩余的题…… 显然应该将Fn写成通项公式(具体是什么写起来不方便而且大家也都知道),设t=((1+√5)/2)n,T=√5N,然后可以得到t-(-1)t/t=√5N,两边同时乘 ...

  4. [SDOI2015]道路修建(线段树)

    题意:给定2行n列的四连通带权网格图,支持修改边权和查询第[l,r]列的最小生成树 题解:这是一道好题,要么SDOI2019中n=2的20pts怎么会“我抄我自己”?(当然NOIP2018“我抄我自己 ...

  5. linux_nano命令

    nano是一个字符终端的文本编辑器,有点像DOS下的editor程序.它比vi/vim要简单得多,比较适合Linux初学者使用.某些Linux发行版的默认编辑器就是nano. nano命令可以打开指定 ...

  6. 吴裕雄--天生自然python Google深度学习框架:深度学习与深层神经网络

  7. 如何处理xml文件!看看这里

    XML处理是开发过程中经常遇到的,PHP对其也有很丰富的支持,本文只是对其中某几种解析技术做简要说明,包括:Xml parser, SimpleXML, XMLReader, DOMDocument. ...

  8. why rpc

    why rpc 单体应用业务复杂, 大集群部署时对数据库的连接是个考验, 维护这个应用也比较费劲(一群人维护,容易代码冲突) 拆分后 各服务之间的接口依赖不能使用httpClient来搞,一是效率太低 ...

  9. sqlserver 命令执行sql脚本

    osql -S 主机名 -U 用户名 -P 密码 -i E:\20190723.sql

  10. C语言占位符(待完善)

    %c 读入一个字符 %s 读入一个字符串,遇到空格制表符或者换行符时结束. %d 读入一个十进制整数 %x或者%X   读入一个十六进制整数(读出时,%x:小写,%X:大写) %o   读入一个八进制 ...