折腾笔记

我是如何用一个 cron,让 AI 每天早上自动给我公众号排版发早报的?

![AI 每日早报真实生成卡片](https://blog-assets.zaneven.com/blog/%E6%8A%98%E8%85%BE%E7%AC%94%E8%AE%B0/daily-report-card-sample.png) *▲ 图:每天早上 8 点自动生成的「AI 每日早报」复古报刊卡片,带日期、期数与排版呼吸感*

我是如何用一个 cron,让 AI 每天早上自动给我公众号排版发早报的?

作者:野生宝藏箱
核心标签:AI 自动化 · 智能体工作流 · 微信公众号 · WePost
一句话简介:从热点抓取、智能脱水、复古卡片渲染到静默同步草稿箱:一个独立开发者的全自动自媒体工作流。

AI 每日早报真实生成卡片 ▲ 图:每天早上 8 点自动生成的「AI 每日早报」复古报刊卡片,带日期、期数与排版呼吸感


序:自媒体早报的“痛苦守恒定律”

在社交平台上,“每日行业早报”是一个非常讨巧的内容形态:信息密度高、易于传播、读者习惯在通勤路上看两眼。

但我打赌,99% 做过早报的人,坚持不过两周。

因为这套“日更”流程极其反人性:

  1. 每天清晨 7 点迷迷糊糊爬起来,翻遍推特、Reddit、各大外媒热榜;
  2. 一条条人肉翻译、去粗取精、概括要点;
  3. 打开设计软件或在线排版工具,换模板、改日期、调字距、生怕文字溢出边缘;
  4. 导出图片,登录微信公众平台,上传素材,复制文字,填标题,选封面……

只要中间任何一天睡了个懒觉,断更的负罪感就会接踵而至。

作为一个信奉“能写代码就绝不肉身搬砖”的工程师,我问了自己一个问题:

我能不能让 AI 助手去帮我抓取、清洗、排版并把草稿推送好,而我唯一需要做的,就是睡醒睁眼审阅一下?

今天这篇文章,就来完整拆解我这套已经稳定静默运行了一个月、每天早上准时出片的早报自动化流水线。


一、流水线全景架构:把流程切成 4 个极简积木

很多自媒体自动化项目之所以夭折,是因为把架构做得过于臃肿——上了复杂的微服务、重型工作流编排,结果跑三天运维两天。

我的原则只有一条:轻量、确定性、高鲁棒性。 整条流水线被抽象为 4 个清晰的步骤:没有任何人工干预环节。每天早上定时器一响,任务自动触发:

早报全自动流水线架构全貌 ▲ 图:早报全自动流水线架构 —— 从客观热点取材到双通道投递的完整无缝闭环

整个闭环由 4 个自包含的阶段组成:

  • 取材(Input):调用权威热点池 API 获取结构化客观资讯,杜绝大模型无中生有;
  • 脱水(Process):LLM 提炼 5 条核心快讯,本地代码执行硬性字数统计校验(≤400 字);
  • 渲染(Render):WePost 云端无头渲染接口出图,自带内容寻址缓存去重;
  • 投递(Output):双通道并行,手机原图秒达个人设备,微信贴图草稿自动同步后台。

二、第一步:全网热点脱水,绝不靠大模型“瞎猜”

做资讯类 AI 流程,最忌讳让大模型去天马行空地“搜新闻”,因为大模型极易产生幻觉、或者把上个月的旧闻当成今天的大事。

我们的取材层完全建立在客观数据源上

  • 接入 AIHOT 精选池,分别拉取过去 24 小时和过去 7 天的高热度前沿动态;
  • 原始数据包含确切来源、发布时间戳与原味英文/中文摘要。

从海量资讯到早报成品,关键在于让大模型克制。我们在提示词契约里立下了极硬性的规则:

  1. 五条原则:从合并去重后的池子里,只挑最重要的 5 条要闻。贪多嚼不烂,5 条正好是一张卡片的最佳视觉容量;
  2. 核心加粗:每条格式必须是 - 公司名/模型名 发生的核心事实 + 一句话影响,关键主体必须用加粗标注;
  3. 绝不目测字数:大模型对字数的感知是极差的,说“写 400 字以内”,它往往能写出 600 字把画板挤爆。因此,我们在本地用 Python len() 做真实验收——如果超标立刻删减重新校验,绝不妥协

三、第二步:告别丑截图,调用自研渲染引擎出片

市面上大多数自动化早报,最后发出来的往往是一段单调的纯文字,或者用 Puppeteer 对着简陋 HTML 截的一张白底黑字图。

为了让早报具备顶级视觉品质,我调用了自研的 WePost 卡片渲染服务

历史早报卡片对比 ▲ 图:不同日期的早报卡片 —— 经典复古纸张质感,排版与留白始终稳如磐石

为什么选择「复古报刊」(Vintage Press)模板?

  • 纸质沉浸感:浅黄柔和的报纸底色,模拟传统报章头版头条,信息感与公信力扑面而来;
  • 版式呼吸节奏:上方包含分类标签(#AI早报)、期数、主副标题;中间正文采用紧凑舒适的段间距;底部带有专属认证角标;
  • 尺寸单源派生:通过接口传入标准的 JSON 参数,服务端无头浏览器秒级渲染出标准的 1080×1440 物理高清 PNG。

内容寻址去重:不花冤枉钱

在云端渲染时,我们加入了一个极其省心的设计:内容寻址缓存。 如果由于网络抖动触发重试,只要正文内容指纹未变,第二次请求直接秒级命中缓存返回已有图片,既不重复消耗出图配额,也保证了极佳的重试幂等性。


四、第三步:静默推送到微信公众号后台

卡片渲染好了,最后也是最繁琐的一步:怎么送进微信公众号后台?

公众号的后台体系对自动化极不友好。我们在探索过程中踩平了无数个深水坑:

坑 1:微信“贴图消息”不支持 Markdown

微信公众号官方除了常规长文,还支持一种轻量优雅的形态——贴图/图片消息(newspic。 它以高清大图为主,正文附带纯文本要点,非常适合早报。

但我们第一次调接口时傻眼了:微信贴图消息根本不解析 Markdown 语法! 卡片上漂亮的 **OpenAI** 加粗,传到微信正文里直接把两颗星号原样输出了,极其粗糙。

  • 解决办法:在将文字送入微信草稿箱前,自动做一层正则过滤,把所有 Markdown 符号剥离,保持纯净利落的排版。

坑 2:双通道投递保障

即使网络偶发异常导致微信后台接口报错,也不能让辛辛苦苦生成的早报沉入大海

  • 通道 A(私人触达):卡片生成后第一时间通过 IM/微信机器人原图直接发送到我的个人设备;
  • 通道 B(公众平台):卡片推送到远程服务器,调用专用脚本完成微信素材上传、打上 5 个专属话题标签(#AI早报 #人工智能 #大模型 #AI参考 #野生宝藏箱),最后静默存入微信公众号草稿箱。

五、实测一个月的运行成果

这套流水线从 2026 年 8 月中旬上线,到现在已经不间断跑了整整一个月

以下是真实跑下来的数据与体验:

  • 自动化准点率:每天早上 8:00 准时出图,执行全流程(抓取 → 提炼 → 渲染 → 微信草稿同步)耗时仅约 30~40 秒
  • 排版稳定性:通过 Python 代码严格限字与 WePost 统一尺寸数据源,连续 30 天 0 次文字溢出被裁切
  • 人的体验变化
    • 以前:每天早晨为发什么、怎么排版焦虑半小时;
    • 现在:早晨醒来,手机微信里已经躺好了今天的早报大图;刷牙时看两眼确认无误,随手在公众号后台点一下“发布”,一天的早报运营任务便宣告完成。

结语:让 AI 成为你的“隐形员工”

很多人聊起 AI,总觉得要搞个多么复杂的聊天机器人。但我觉得,AI 最迷人的地方,恰恰在于它能成为你背后的“隐形杠杆”

它没有情绪,不需要休假,每天准点帮你收集全球信息、提炼要点、调接口画出高颜值卡片、并恭恭敬敬地把草稿塞进你的后台。

而你,只需要保留最后的审美与决策权。

如果你也对构建自己的全自动化内容流水线、或者对高质量卡片渲染感兴趣,欢迎访问体验 WePost,期待与更多独立创作者一起把无聊的搬砖流程,变成一行行优雅的自动化代码!


本文所述卡片渲染能力基于开源项目 WePost(https://github.com/zaneven/WePost),欢迎 Star 与交流。