笔记-爬虫部署及运行工具-scrapydweb
1. 简介
scrapyd是爬虫部署工具,但它的ui比较简单,使用不是很方便。
scrapydweb以scrapyd为基础,增加了ui界面和监控,使用非常方便。
2. 部署-scrapyd
使用scrapyd部署。
注意:在windows下无法部署,因为不能执行scrapyd-deploy命令。
2.1. 部署
第一步:修改scrapy.cfg为下列样式:
# Automatically created by: scrapy startproject
#
# For more information about the [deploy] section see:
# https://scrapyd.readthedocs.io/en/latest/deploy.html
[settings]
default = sctest.settings
[deploy:sctestd]
url = http://ip:6800/
project = sctestp
第二步:进入目录,进行部署
注意一定要进入scrapy.cfg所在的目录
scrapyd-deploy sctestd -p sctestp
[root@soft sctest]# scrapyd-deploy sctestd -p sctestp
Packing version 1560213774
Deploying to project "sctestp" in http://ip:6800/addversion.json
Server response (200):
{"node_name": "soft", "status": "ok", "project": "sctestp", "version": "1560213774", "spiders": 1}
部署完成
这时在scrapyd的页面中可以看到project
http://ip:6800/listprojects.json
第三步:执行
curl http://ip:6800/schedule.json -d project=sctestp -d spider=scspider
3. scrapydweb
3.1. 安装
git clone https://github.com/my8100/scrapydweb.git
cd scrapydweb
python setup.py install
因为没有setuptools 40.6.3,安装失败。
pip install –upgrade setuptools
重新安装成功
3.2. 配置及运行
1、请先确保所有主机都已经安装和启动 Scrapyd,如果需要远程访问 Scrapyd,则需将 Scrapyd 配置文件中的 bind_address 修改为 bind_address = 0.0.0.0,然后重启 Scrapyd。
2、开发主机或任一台主机安装 ScrapydWeb: pip install scrapydweb
3、运行命令 scrapydweb -h,将在当前工作目录生成配置文件 scrapydweb_settings.py,可用于下文的自定义配置。
4、启用 HTTP 基本认证,用于scrapydweb登录:
ENABLE_AUTH = True
USERNAME = 'user_root'
PASSWORD = 'password'
5、声明scrapyd_server,支持多种格式,详见文档。
SCRAPYD_SERVERS = [
'ip:6800',
# 'username:password@localhost:6801#group',
('username', 'password', 'localhost', '6801', 'group'),
]
3.3. 运行
scrapydweb
3.4. 问题
如果scrapyd server是本机,则scrapydweb默认会直接读取scrapyd日志而不是发起请求,需要设置日志路径。