Skip to content

hacksman/shino

Repository files navigation

shino

简介

shino 是一个免费开源的无代码化分布式爬虫框架,项目使用到 mysql、rabbitmq、redis 分别作为数据存储、消息队列和缓存。利用 grpc 技术作解耦各个模块,实现多机灵活部署。灵活组合的拓展需求。

功能块

  • 种子生成器
  • 下载器
  • 解析器
  • 清洗器
  • 存储器

准备

备注:请确保你所使用的环境和 resouces 中的配置一致

安装使用

  • 版本要求

python >= 3.7.0

  • 获取项目代码
git clone https://github.com/hacksman/shino
  • 安装依赖
pip instal requirements.txt
  • 运行服务
# 开启服务 / debug 表示在 debug 配置环境下运行
sh start.sh debug
# 关闭服务
sh stop.sh
# 重启服务
sh restart.sh debug
  • 原理说明

shino 原理说明

  • 使用教程

shino 教程 - 知乎热榜数据抓取

TODO-LIST

  • seed modifier 中间件模式改写
  • run.sh 运行启动脚本
    • 支持 start、restart、stop
  • 命令行模式支持更加丰富的功能
    • debug 模式
      • seed 运行时间修改为 10s 执行一次
      • debug 以上级别日志输出
  • install 脚本编写,实现 start/restart/stop 功能
  • 各个地方的参数配置化
  • 各模块功能及原理说明文档
    • 是什么
    • 原理
    • 使用说明
  • 使用说明
    • 基本 demo
    • 链式调用 demo
    • 动态 url demo
    • 解析 xpath demo
    • 解析内嵌结构 demo
  • 去掉冗余的日志
  • 支持多 headers 切换形式
  • 数据支持 update 操作
  • 支持仅本地抓取
  • 完善统计功能
  • 支持间隔多久时间抓取一次,根据网站反爬虫策略动态调整
  • 支持站点采集完毕后,发送消息通知功能
  • 后端接口暴露
  • 前端界面

License

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published