GoDoc Build Status Go Report Card codecov.io FOSSA Status

gospider

golang实现的爬虫框架,使用者只需关心页面规则,提供web管理界面。基于colly开发。

当前状态

Alpha, 核心功能可用, 但功能还不完善。接口随时可能改变。

限制:

  • 目前只能单机运行, 不能实现真正的分布式运行。 但大部分情况下, 如果你不是需要同时爬取成百上千个站点, 其实并不需要真正的分布式, 只需要一个代理IP池即可。
  • 不能用于大文件下载

特性

  • 使用者只需编写页面规则代码
  • 提供WEB管理界面 (包括任务管理、系统管理等)
  • 任务级别的可配置异步并发控制(请求延迟, 请求并发度)
  • 自动cookie和session处理
  • 支持各种导出类型(mysql,csv等)
  • 支持定时任务(兼容crontab格式)
  • 支持任务级别的可配置代理IP池
  • Robots.txt 支持

依赖

MySQL

gospider可以配置一下相关环境变量: GOSPIDER_DB_HOST、GOSPIDER_DB_PORT、GOSPIDER_DB_USER、GOSPIDER_DB_PASSWORD、GOSPIDER_DB_NAME、GOSPIDER_WEB_IP、GOSPIDER_WEB_PORT

本地开发环境: 安装

使用方式

_example

以baidunews(百度新闻)为例简单说明爬虫规则如何编写:

_example

image image image

感谢

License

FOSSA Status