公众号旧文
我给公众号做了一个“阅读量监控系统”
很多做公众号的人,都会不自觉的养成一个习惯。
那就是隔一会儿就打开后台,看一眼阅读量,当然我也不例外。
比如:
- 刚发完文章,5分钟看一次
- 半小时后再看一次
- 晚上睡前再看一次
然后心里默默判断:这篇文章还可以,那篇文章,好像不太行。
但公众号后台有一个问题:它不会给你历史趋势。
你只能看到当前阅读量,却很难知道:
- 阅读量是慢慢涨的
- 还是某个时间突然爆发
- 还是发完以后几乎没人看
于是我产生了一个想法:
能不能给公众号做一个“阅读量监控系统”?
也就是,每天自动记录文章阅读量,然后画出一条折线图。
说干就干,我马上动手做了一个,还成功跑起来了。
一、整体思路很简单
这个系统本质上只做三件事:
- 抓取公众号文章阅读量
- 保存历史数据
- 画出阅读量折线图
整个结构是这样的:
文章发表记录
↓
抓取阅读量
↓
CSV 保存历史数据
↓
FastAPI 提供接口
↓
ECharts 画折线图
看起来挺复杂,其实每一步都不难。
二、抓取公众号阅读量
首先要解决的问题是:
怎么拿到文章的阅读量?
可以直接去看上一篇文章:
里面有全量的抓取脚本。
当然,这里要注意一个问题:
抓取频率不能太高。
否则可能会触发风控。
所以我现在的策略是每天抓一次。
三、保存阅读历史
抓到的数据需要保存下来。
我没有用数据库,而是用了一个非常简单的方案:
CSV 文件。
例如:
date,title,url,read
2026-03-22,文章A,xxx,120
2026-03-23,文章B,xxx,180
这样每天保存一份数据。
优点很明显:
- 简单
- 可读
- 不需要数据库
以后如果数据多了,再换数据库也不迟。
四、用 API 把数据提供出去
接下来我用 Python 写了一个简单的 API 服务。
框架用的是FastAPI。
它可以很方便地把数据变成接口,比如:
/articles
返回文章列表。
/article
返回某篇文章的历史阅读量。
比如:
{
"title":"我的文章",
"dates":["3-21","3-22","3-23"],
"reads":[100,150,210]
}
这样前端就可以直接使用这些数据画图。
五、把数据画成折线图
最后一步,就是把数据变成图表。
这里我用的是一个非常好用的图表库:
Apache ECharts
只需要几十行 JavaScript,就可以画出折线图。
点击文章标题,就会出现趋势图:
文章A
📈 阅读趋势图
文章B
📈 阅读趋势图
这样就能非常直观地看到:
- 阅读量什么时候增长
- 有没有突然爆发
- 哪篇文章更受欢迎
六、最后的效果
现在我的小系统大概长这样:

点击文章,就能看到阅读量变化。
虽然功能很简单,但它已经是一个完整的系统:
抓数据
存数据
提供接口
可视化
而且最重要的是,这是我自己一步一步做出来的。
那种系统真的跑起来了的感觉,还挺有成就感的。
七、接下来还能做什么?
既然已经有了基础,就能继续升级,比如:
- 阅读量增长排行榜
- 爆款文章识别
- 总阅读趋势
甚至可以做成一个完整的公众号数据分析工具。
不过对我来说,目前这一版已经够了。
因为最重要的一步已经完成了,这种感觉比阅读量本身更让人开心。