python爬虫需要安装的模块_Python 爬虫 | 小结爬虫部署框架

爬虫与 Gerapy

环境搭建

1.执行如下命令,等待安装完毕

pip3 install gerapy

2.验证gerapy是否安装成功

在终端中执行 gerapy 会出现如下信息

Usage:

gerapy init [--folder=]

gerapy migrate

gerapy createsuperuser

gerapy runserver []

Gerapy配置启动

1.新建一个项目

gerapy init

执行完该命令之后会在当前目录下生成一个 gerapy 文件夹,进入该文件夹,会找到一个名为 projects 的文件夹

2.对数据库进行初始化(在 gerapy 目录中操作),执行如下命令

gerapy migrate

对数据库初始化之后会生成一个 SQLite 数据库,数据库保存主机配置信息和部署版本等

3.启动 gerapy 服务

gerapy runserver

此时启动 gerapy 服务的这台机器的8000端口上开启了 Gerapy 服务,在浏览器中输入http://localhost:8000 即可进入 Gerapy 管理界面,在管理界面就可以进行主机管理和界面管理

爬虫与 scrapyd

scrapyd的安装

scrapyd 服务:

pip install scrapyd

scrapyd 客户端:

pip install scrapyd-client

启动 scrapyd 服务

1.在 scrapy 项目路径下 启动 scrapyd 的命令:sudo scrapyd 或 scrapyd

2.启动之后就可以打开本地运行的 scrapyd ,浏览器中访问本地 6800 端口可以查看 scrapyd 的监控界面

3.点击job可以查看任务监控界面

scrapy 项目部署

配置需要部署的项目

编辑需要部署的项目的 scrapy.cfg 文件(需要将哪一个爬虫部署到 scrapyd 中,就配置该项目的该文件)

[deploy:部署名(部署名可以自行定义)]

url = http://localhost:6800/

project = 项目名(创建爬虫项目时使用的名称)

部署项目到 scrapyd

同样在 scrapy项目路径下执行:

scrapyd-deploy 部署名(配置文件中设置的名称) -p 项目名称

管理 scrapy 项目启动项目:curl http://localhost:6800/schedule.json -d project=project_name -d spider=spider_name

关闭爬虫:curl http://localhost:6800/cancel.json -d project=project_name -d job=jobid

使用 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)

了解 scrapyd 的其他 webapicurl http://localhost:6800/listprojects.json (列出项目)

curl http://localhost:6800/listspiders.json?project=myspider (列出爬虫)

curl http://localhost:6800/listjobs.json?project=myspider (列出job)

curl http://localhost:6800/cancel.json -d project=myspider -d job=tencent (终止爬虫,该功能会有延时或不能终止爬虫的情况,此时可用kill -9杀进程的方式中止)

小结在 scrapy 项目路径下执行sudo scrapyd或scrapyd,启动 scrapyd 服务;

或以后台进程方式启动nohup scrapyd > scrapyd.log 2>&1 &

部署 scrapy 爬虫项目scrapyd-deploy -p myspider

启动爬虫项目中的一个爬虫curl http://localhost:6800/schedule.json -d project=myspider -d spider=tencent

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值