相关文章传送门
Mr数据杨:【Gerapy爬虫管理框架】部署流程zhuanlan.zhihu.comGerapy这个框架是干嘛的?
将我们爬虫工程师通过Scrapy爬虫框架写好的项目整合到Django的Web环境进行统一管理的后台。简单理为一个Admin后台进行控制我们写好的爬虫脚本,进行有针对性的网络数据采集(比如固定时间、固定间隔、或者一次性采集)方便管理,并且对项目进行简单的项目管理,对于了解Django的Web开发的小伙伴来说后期如果需要报表功能可以基于这个框架自己增加Admin中的模块功能,比较容易。该框架对于初学者非常友好,并且使用简单、高效。
注意的坑!
- Gerapy的Django版本是1.x,如果使用的Django环境是2.x、3.x或者更高版本是不兼容的,有能力的童鞋自行修改对应源码即可,如果懒得修改的话直接弄2台机器吧。处理方案传送
- 部署服务器的话需要开一个端口进行远程访问,切记不要开6800裸奔。
- 远程服务器配置和scrapy配置版本要相同。
效果展示
部署流程
项目安装
gerapy 安装 注意自己的版本
pip install gerapy
scrapyd 安装
pip install scrapyd
创建工作的文件目录,该目录下初始化项目(文件名随意)用命令行执行
gerapy init
初始化数据库
cd gerapy
gerapy migrate
创建超级用户(记住用户名和密码)
gerapy initadmin
然后就可以启动服务了,启动服务(可指定url和port)
gerapy runserver 你的ip+端口(0.0.0.0:8000)
scrapyd 或者 /usr/local/python3/bin/scrapyd
进入管理平台(浏览器输入) 举例这样在本地打开
http://127.0.0.1:8000
这个地方有点坑,网上很多教程没有用户名密码创建登陆过程,不创建用户无法使用。创建超级用户(用户名和密码都是admin),创建完毕之后进入管理平台进行密码修改即可。
gerapy initadmin
主机管理
- 创建主机名称(机器名称:能区分出来就行)
- 创建主机IP(IP网段:略)
- 创建主机端口(端口号:一般默认6800)
- 认证:目前这个用户名对和错都能正常运行
项目管理
- 将我们写好的scrapy的工程project目录复制到gerapy中的project复制过来就行,然后会在页面中直接显示你的项目目录。
- 部署之
任务管理
创建任务 包括名称(自定义)、项目(需要和项目管理一致)、爬虫(单独spider文件) 执行任务:主机 + 调度方式 + 运行时间 + 时区,大陆选择Asia/Hong_Kong
然后就都部署好了,可以自己用爬虫模拟器根据抓取的脚本写一个自动化填写的脚本,基本1个礼拜100个脚本1个一个整太烦,尝试在sqlite里直接添加无法执行,不知道什么原因。