本项目fork项目go_spider,github:https://github.com/hu17889/go_spider ,因此项目架构的部分文档可以参考此项目。
同时项目架构、部分思路参考了python的经典爬虫scrapy。
基本结构:
Spider模块(主控)Downloader模块(下载器)PageProcesser模块(页面分析)History(Url采集历史记录)Scheduler模块(任务队列)Pipeline模块(结果输出)主要Feature:
1. 基于Go语言的并发采集2. 页面下载、分析、持久化模块化,可自定义扩展3. 采集日志记录(Mongodb支持)4. 页面数据自定义存储(Mysql、Mongodb)5. 深度遍历,同时可自定义深度层次6. Xpath解析主要用于定向采集网站。
评论