一、介绍:
Gerapy 是一款分布式爬虫管理框架,支持 Python 3,基于 Scrapy、Scrapyd、Scrapyd-Client、Scrapy-Redis、Scrapyd-API、Scrapy-Splash、Jinjia2、Django、Vue.js 开发等。在爬虫方面Gerapy 可以帮助我们:
①更方便地控制爬虫运行
②更直观地查看爬虫状态
③更实时地查看爬取结果
④更简单地实现项目部署
⑥更统一地实现主机管理
二、gerapy的初始化配置:
(1)启动scrapyd服务
(1)安装gerapy分布式爬虫管理框架。命令pip install gerapy
此时,已经安装成功了。
(3)检查gerapy是否可用。输入命令gerapy即可。
(4)初始化gerapy,生成gerapy框架的工作目录。(在哪执行初始化,一般进入D盘根目录即可)
命令gerapy init
初始化完成,进入gerapy文件夹,会有一个projects文件夹。
(5)再进入gerapy目录,再执行gerapy数据库的初始化,建立相关的数据库表。
命令gerapy migrate
此时,再回到我们的创建的gerapy文件夹下,就会多出一个db.sqlite3的文件。
(6)在gerapy目录下,启动gerapy服务,默认在8000端口。
命令gerapy runserver
此时,打开浏览器输入 http://localhost:8000,可以看到 Gerapy 的主界面。
(7)完成以上步骤,说明gerapy初始化成功了。但是现在还没有添加主机和项目,所有的主机数量和项目数量都是0。
三、gerapy管理界面的使用
配置gerapy的主机(服务,也就是将来爬虫项目上传的主机地址)
(1)点击左侧 Clients 选项卡,即主机管理页面,添加我们的 Scrapyd 远程服务,点击右上角的创建按钮即可添加我们需要管理的 Scrapyd 服务。
名称可以随便起。ip和端口为部署位置的ip和端口。
(2)在cmd中,开启scrapyd服务。(如果scrapyd在远程服务器上已经部署成功了,那么是不需要再次进行开启的。一般远程服务器上的scrapyd会一直保持运行状态。
(3)再次刷新主机管理,scrapyd的连接状态变成normal即可。
四、gerapy部署爬虫项目
(1) 点击左侧的 Projects ,即项目管理选项。
(2)将自己的爬虫项目,拷贝到gerapy目录下的projects目录下。
(3)刷新浏览器页面,我们便可以看到 Gerapy 检测到了这个项目。
(4)点击部署按钮进行打包和部署,在右下角我们可以输入打包时的描述信息,类似于 Git 的 commit 信息,然后点击打包按钮,即可发现 Gerapy 会提示打包成功,同时在左侧显示打包的结果和打包名称。
(5)此时,点击主机管理中的调度,即可启动爬虫以及关闭爬虫,查看日志等。
(6)至此,gerapy的安装和部署已全部实现。
五、可能有的疑问:
Gerapy 与 scrapyd 有什么关联吗?
①我们仅仅使用scrapyd是可以调用scrapy进行爬虫,只是需要使用命令行开启爬虫
curl http://127.0.0.1:6800/schedule.json -d project=工程名 -d spider=爬虫名
②使用Greapy就是为了将使用命令行开启爬虫变成 “小手一点”。
我们在gerapy中配置了scrapyd后,不需要使用命令行,可以通过图形化界面直接开启爬虫。