使用 golang 来创建一个爬虫获取 <reddit.com> 图片。
比如 r/wallpaper,通过解析官方API http://www.reddit.com/r/wallpaper.json?limit=22&after=xxxxx 返回的 JSON
数据来分析和下载文件。
主要使用库
- github.com/urfave/cli/v2 用来创建命令行。
- github.com/gocolly/colly 是golang爬虫框架, 用来获取数据。
- github.com/buger/jsonparser 来解析 reddit 的json数据。
下面以一步步创建爬虫, 创建命令,数据检索,并发处理下载。
graph TD
A[命令行入口] --参数--> B(获取数据)
B --> B1(数据处理)
B1 --> C{limit}
C --计数器+1--> B
C --等待下载完成--> E(结束)
B1 --计数器+1--> D(下载)