目录[-]
Scrapyd+Gerapy +nginx+ubuntu16.04项目部署!让一切变得简单
名词介绍
Scrapyd 是一个用于部署和运行scrapy项目的工具,这样的话我们只需要通过API接口,来查看项目的运行情况和状态。 GitHub:https://github.com/scrapy/scrapyd PyPI:https://pypi.python.org/pypi/scrapyd 官方文档:https://scrapyd.readthedocs.io
Gerapy 是一款分布式爬虫管理框架,支持 Python 3,基于 Scrapy、Scrapyd、 Scrapyd-Client、Scrapy-Redis、Scrapyd-API、Scrapy-Splash、Jinjia2、Django、Vue.js 开发.由崔大开发 崔大个人博客有详细介绍:https://cuiqingcai.com/4959.html
安装与配置
安装命令:
配置: 安装完成,我们需要新建一个配置文件配置,Scrapyd运行的时候会读取该文件。
执行命令:
填写以下文件内容:
[scrapyd] eggs_dir = eggs logs_dir = logs items_dir = jobs_to_keep = 5 dbs_dir = dbs max_proc = 0 max_proc_per_cpu = 10 finished_to_keep = 100 poll_interval = 5.0 bind_address = 0.0.0.0 #修改此供外网访问,如果后续配置nginx,为了安全问题,则设置为127.0.0.1 http_port = 6800 debug = off runner = scrapyd.runner application = scrapyd.app.application launcher = scrapyd.launcher.Launcher webroot = scrapyd.website.Root[services] schedule.json = scrapyd.webservice.Schedule cancel.json = scrapyd.webservice.Cancel addversion.json = scrapyd.webservice.AddVersion listprojects.json = scrapyd.webservice.ListProjects listversions.json = scrapyd.webservice.ListVersions listspiders.json = scrapyd.webservice.ListSpiders delproject.json = scrapyd.webservice.DeleteProject delversion.json = scrapyd.webservice.DeleteVersion listjobs.json = scrapyd.webservice.ListJobs daemonstatus.json = scrapyd.webservice.DaemonStatus
启动Scrapyd
执行命令:
分隔符
安装与配置nginx
安装命令:/usr/sbin/nginx:主程序 /etc/nginx:存放配置文件 /usr/share/nginx:存放静态文件 /var/log/nginx:存放日志
我们需要修改一下配置文件,执行命令:

server { listen 6801; location / { proxy_pass http://127.0.0.1:6800/; #我使用的是用户认证的方式,所以不需要的话,可以注释下边两行 auth_basic "Restricted"; auth_basic_user_file /etc/nginx/conf.d/.htpasswd; } }用户认证配置:
安装htpasswd
htpasswd是apache的一个工具,该工具主要用于建立和更新存储用户名、密码的文本文件,主要用于对基于http用户的认证。
生成用户密码
回车输入密码
查看账户和密码:
重启nginx
Gerapy的安装与使用
安装:
检测安装: 输出一下内容就证明安装成功
初始化:(在任一路径都可以)
数据库初始化:
启动服务:
接下来我们在浏览器中打开 http://localhost:8000/,就可以看到 Gerapy 的主界面了:
主机管理:
需要添加 IP、端口,名称,以及用户反响代理认证,点击创建即可完成添加,点击返回即可看到当前添加的 Scrapyd 服务列表,样例如下所示:
项目管理:
假设现在我们有一个 Scrapy 项目,如果我们想要进行管理和部署,这时我们只需要将项目拖动到刚才 gerapy 运行目录的 projects 文件夹下,这样我们就可以在项目管理页面看到了。