爬虫学习笔记18-scrapy项目的管理和部署

1、scrapyd

(1)了解scrapd

(2)安装:

服务端:pip install scrapyd
客服端:pip install scrapyd-client

(3)启动scrapyd服务
①在scrapy项目路径下 启动scrapyd的命令:sudo scrapyd 或 scrapyd
②启动之后就可以打开本地运行的scrapyd,浏览器中访问本地6800端口可以查看scrapyd的监控界面
爬虫学习笔记18-scrapy项目的管理和部署_第1张图片
爬虫学习笔记18-scrapy项目的管理和部署_第2张图片
③点击job可以查看任务监控界面
爬虫学习笔记18-scrapy项目的管理和部署_第3张图片

2、scrapy项目部署

(1)配置需要部署的项目:编辑项目的scrapy.cfg文件

[deploy:部署名(部署名可以自行定义)]
 url = http://localhost:6800/
 project = 项目名(创建爬虫项目时使用的名称)

爬虫学习笔记18-scrapy项目的管理和部署_第4张图片
(2)部署项目到scrapyd
在scrapy项目路径下执行:scrapyd-deploy 部署名(配置文件中设置的名称) -p 项目名称
爬虫学习笔记18-scrapy项目的管理和部署_第5张图片
部署成功之后就可以看到部署的项目
爬虫学习笔记18-scrapy项目的管理和部署_第6张图片
3、项目管理
(1)命令行管理

  • 启动项目: curl http://localhost:6800/schedule.json -d project=项目名 -d spider=爬虫名
    在这里插入图片描述

  • 关闭爬虫: curl http://localhost:6800/cancel.json -d project=项目名 -d job=jobid
    注:curl是命令行工具,如果没有则需要额外安装

(2)使用requests模块控制scrapy项目

import requests

# 启动爬虫
url = 'http://localhost:6800/schedule.json'
data = {
     
	'project': 项目名,
	'spider': 爬虫名,
}
resp = requests.post(url, data=data)

# 停止爬虫
url = 'http://localhost:6800/cancel.json'
data = {
     
	'project': 项目名,
	'job': 启动爬虫时返回的jobid,
}
resp = requests.post(url, data=data)

(3)Gerapy管理
1)Gerapy 是一款 分布式爬虫管理框架
2)安装:pip3 install gerapy -i https://pypi.douban.com/simple/
3)配置启动
①新建一个项目:gerapy init
执行完该命令之后会在当前目录下生成一个gerapy文件夹,进入该文件夹,会找到一个名为projects的文件夹
②对数据库进行初始化(在gerapy目录中操作),执行如下命令:gerapy migrate
对数据库初始化之后会生成一个SQLite数据库,数据库保存主机配置信息和部署版本等
③启动 gerapy服务:gerapy runserver
此时启动gerapy服务的这台机器的8000端口上开启了Gerapy服务,在浏览器中输入http://localhost:8000就能进入Gerapy管理界面,在管理界面就可以进行主机管理和界面管理
爬虫学习笔记18-scrapy项目的管理和部署_第7张图片
4)通过Gerapy配置管理scrapy项目
①配置主机

  • 添加scrapd主机
    爬虫学习笔记18-scrapy项目的管理和部署_第8张图片
    爬虫学习笔记18-scrapy项目的管理和部署_第9张图片
    需要添加 IP、端口,以及名称,点击创建即可完成添加,点击返回即可看到当前添加的 Scrapyd 服务列表,创建成功后,我们可以在列表中查看已经添加的服务
  • 执行爬虫,就点击调度.然后运行. (前提是: 我们配置的scrapyd中,已经发布了爬虫.)
    爬虫学习笔记18-scrapy项目的管理和部署_第10张图片
    爬虫学习笔记18-scrapy项目的管理和部署_第11张图片

②配置项目

  • 将scarpy项目直接放到 /gerapy/projects下.

  • 在gerapy后台看到有个项目
    爬虫学习笔记18-scrapy项目的管理和部署_第12张图片

  • 点击部署点击部署按钮进行打包和部署,在右下角我们可以输入打包时的描述信息,类似于 Git 的 commit 信息,然后点击打包按钮,即可发现 Gerapy 会提示打包成功,同时在左侧显示打包的结果和打包名称。
    爬虫学习笔记18-scrapy项目的管理和部署_第13张图片

  • 成功部署之后会显示描述和部署时间
    爬虫学习笔记18-scrapy项目的管理和部署_第14张图片

  • 选择一个站点,点击右侧部署,将该项目部署到该站点上
    爬虫学习笔记18-scrapy项目的管理和部署_第15张图片

  • 来到clients界面,找到部署该项目的节点,点击调度
    爬虫学习笔记18-scrapy项目的管理和部署_第16张图片

  • 在该节点中的项目列表中找到项目,点击右侧run运行项目
    爬虫学习笔记18-scrapy项目的管理和部署_第17张图片

你可能感兴趣的:(爬虫学习,python)