「Gerapy 爬虫管理框架」win & linux 端分布式部署你的Scrapy爬虫脚本

文章目录

  • 内容介绍
  • Gerapy这个框架是干嘛的?
  • 注意的坑!
  • 效果展示
  • 部署流程
  • 主机管理
  • 项目管理
  • 任务管理

内容介绍

开发环境为 Python3.6,Gerapy 版本 0.9.x ,爬虫项目全部内容索引目录

看懂Python爬虫框架,所见即所得一切皆有可能

本章带你学习基于 Python3Gerapy 爬虫框架 项目部署使用教程。

Gerapy这个框架是干嘛的?

将我们爬虫工程师通过Scrapy爬虫框架写好的项目整合到Django的Web环境进行统一管理的后台。简单理为一个Admin后台进行控制我们写好的爬虫脚本,进行有针对性的网络数据采集(比如固定时间、固定间隔、或者一次性采集)方便管理,并且对项目进行简单的项目管理,对于了解Django的Web开发的小伙伴来说后期如果需要报表功能可以基于这个框架自己增加Admin中的模块功能,比较容易。该框架对于初学者非常友好,并且使用简单、高效。

注意的坑!

  1. Gerapy的Django版本是1.x,如果使用的Django环境是2.x、3.x或者更高版本是不兼容的,有能力的童鞋自行修改对应源码即可,如果懒得修改的话直接弄2台机器吧。处理方案传送
  2. 部署服务器的话需要开一个端口进行远程访问,切记不要开6800裸奔。
  3. 远程服务器配置和scrapy配置版本要相同。

效果展示

「Gerapy 爬虫管理框架」win & linux 端分布式部署你的Scrapy爬虫脚本_第1张图片
「Gerapy 爬虫管理框架」win & linux 端分布式部署你的Scrapy爬虫脚本_第2张图片
「Gerapy 爬虫管理框架」win & linux 端分布式部署你的Scrapy爬虫脚本_第3张图片
「Gerapy 爬虫管理框架」win & linux 端分布式部署你的Scrapy爬虫脚本_第4张图片

部署流程

  • 1.项目安装
# gerapy 安装 注意自己的版本
pip install gerapy
  • 2.scrapyd 安装
pip install scrapyd
  • 3.gerapy 项目初始化
# 创建工作的文件目录,该目录下初始化项目(文件名随意)用命令行执行
gerapy init
  • 4.gerapy 数据库初始化
cd gerapy
gerapy migrate

「Gerapy 爬虫管理框架」win & linux 端分布式部署你的Scrapy爬虫脚本_第5张图片

  • 5.创建超级用户
# 记住用户名和密码
gerapy initadmin
  • 6.启动服务
# 然后就可以启动服务了,启动服务(可指定url和port)
gerapy runserver 你的ip+端口(0.0.0.0:8000)
scrapyd 或者 /usr/local/python3/bin/scrapyd
  • 7.进入管理平台
http://127.0.0.1:8000

这个地方有点坑,网上很多教程没有用户名密码创建登陆过程,不创建用户无法使用。创建超级用户(用户名和密码都是admin),创建完毕之后进入管理平台进行密码修改即可。

gerapy initadmin

主机管理

  1. 创建主机名称(机器名称:能区分出来就行)
  2. 创建主机IP(IP网段:略)
  3. 创建主机端口(端口号:一般默认6800)
  4. 认证:目前这个用户名对和错都能正常运行
    「Gerapy 爬虫管理框架」win & linux 端分布式部署你的Scrapy爬虫脚本_第6张图片

项目管理

  1. 将我们写好的scrapy的工程project目录复制到gerapy中的project复制过来就行,然后会在页面中直接显示你的项目目录。
  2. 部署之
    「Gerapy 爬虫管理框架」win & linux 端分布式部署你的Scrapy爬虫脚本_第7张图片
    「Gerapy 爬虫管理框架」win & linux 端分布式部署你的Scrapy爬虫脚本_第8张图片

任务管理

创建任务 包括名称(自定义)、项目(需要和项目管理一致)、爬虫(单独spider文件)
执行任务:主机 + 调度方式 + 运行时间 + 时区,大陆选择Asia/Hong_Kong
「Gerapy 爬虫管理框架」win & linux 端分布式部署你的Scrapy爬虫脚本_第9张图片
然后就都部署好了,可以自己用爬虫模拟器根据抓取的脚本写一个自动化填写的脚本,基本1个礼拜100个脚本1个一个整太烦,尝试在sqlite里直接添加无法执行,不知道什么原因。

你可能感兴趣的:(Python,爬虫基础和项目管理,python,django,linux,gerapy,爬虫管理)