Loading... ## gerapy简介 Gerapy 是一款分布式爬虫管理框架,支持 Python 3,基于 Scrapy、Scrapyd、Scrapyd-Client、Scrapy-Redis、Scrapyd-API、Scrapy-Splash、Jinjia2、Django、Vue.js 开发,Gerapy 可以帮助我们: - 更方便地控制爬虫运行 - 更直观地查看爬虫状态 - 更实时地查看爬取结果 - 更简单地实现项目部署 - 更统一地实现主机管理 - 更轻松地编写爬虫代码(几乎没用,感觉比较鸡肋) ### 各个框架的作用: 1. Scrapy:是一个基于Twisted的异步IO框架,有了这个框架,我们就不需要等待当前URL抓取完毕之后在进行下一个URL的抓取,抓取效率可以提高很多。 2. Scrapy-redis:虽然Scrapy框架是异步加多线程的,但是我们只能在一台主机上运行,爬取效率还是有限的,Scrapy-redis库为我们提供了Scrapy分布式的队列,调度器,去重等等功能,有了它,我们就可以将多台主机组合起来,共同完成一个爬取任务,抓取的效率又提高了。 3. Scrapyd:分布式爬虫完成之后,接下来就是代码部署,如果我们有很多主机,那就要逐个登录服务器进行部署,万一代码有所改动..........可以想象,这个过程是多么繁琐。Scrapyd是专门用来进行分布式部署的工具,它提供HTTP接口来帮助我们部署,启动,停止,删除爬虫程序,利用它我们可以很方便的完成Scrapy爬虫项目的部署。 4. Gerapy:是一个基于Scrapyd,Scrapyd API,Django,Vue.js搭建的分布式爬虫管理框架。简单点说,就是用上述的Scrapyd工具是在命令行进行操作,而Gerapy将命令行和图形界面进行了对接,我们只需要点击按钮就可完成部署,启动,停止,删除的操作。 ## gerapy安装 首先查看一下环境,注意要使用安装到python3 的环境中,例如这里我的服务器同时安装了python2和python3的环境,所以这里要用pip3来安装:  通过pip安装 pip install gerapy 然后使用gerapy测试是否安装成功:  报错了,一般这个时候都是百度,但我在安装python第三方库报错的时候一般喜欢在github的仓库里面看看有没有解决办法:  可以发现这里有个bug的提问,点进去可以找到解决方法:  查看问题可以发现时scrapy的问题,解决方法是下载一个老版本(2.0.1)的scrapy,将一个文件复制到新版的scrapy库的目录下,操作一下,问题解决,用到的文件我会加在附件里,可以不用去下载2.0.1的scrapy ## gerapy初始化 首先初始化项目,以及生成数据库: gerapy init cd gerapy gerapy migrate 然后生成一个超级用户账号,密码需要至少8位: 然后启动一下 gerapy runserver 打开链接: 前台:http://127.0.0.1:8000 因为gerapy是基于django+vue.js搭建的爬虫管理框架,所以还有django自带的后台地址: 后台:http://127.0.0.1:8000/admin  ## gerapy总结 这篇文章主要说一下gerapy的安装,以及解决最新版本的一个小问题,然后给gerapy开一个头 链接:[飞机直达](https://pan.baidu.com/s/10CEJduNZfr6_jO8wGi_fRA "飞机直达") 提取码:g273 <hr class="content-copyright" style="margin-top:50px" /><blockquote class="content-copyright" style="font-style:normal"><p class="content-copyright">版权属于:JsOnGmAX</p><p class="content-copyright">本文链接:<a class="content-copyright" href="https://jsong.cn/archives/271.html" target="_blank" >https://jsong.cn/archives/271.html</a></p><p class="content-copyright">博客内容遵循 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 协议 如有侵权 请联系本人删除</p></blockquote> 最后修改:2020 年 08 月 05 日 09 : 39 AM © 允许规范转载 赞赏 如果觉得我的文章对你有用,请随意赞赏 ×Close 赞赏作者 扫一扫支付 支付宝支付 微信支付