每天清晨打开微信公众号,看到最新的 AI 资讯、学术论文推荐、金融动态已经准时“上线”,这并不是我起得特别早,更不是有人通宵排版,而是我们在后台悄悄地跑了一套自动化链路。今天我就来分享这套技术流程的搭建原理和实操方法,希望对正在探索内容自动化的朋友们有所启发。
这一自动化方案的核心分为两个部分:Coze 插件的数据抓取能力与 Make 的流程编排能力。你可以把 Coze 当作“爬虫引擎”,而 Make 则是“流程自动执行器”,两者配合,实现了“从抓取到发布”的全链路闭环。

一、方案概览
我们构建的是一个每日定时运行的自动内容生成系统,其流程为:
-
通过 Coze 插件从多个新闻网站获取当日 AI 相关的新闻;
-
使用 Make 中的 HTTP 模块触发插件运行;
-
对返回的数据进行 JSON 解析;
-
使用迭代器(Iterator)逐条处理新闻数据;
-
聚合整理为结构清晰的图文内容;
-
自动推送为微信公众平台草稿。
最终效果:无需人工干预,即可每日获得风格统一、结构清晰的内容草稿。

二、爬虫插件设计:用结构化视角解析新闻网站
我们以两类内容为例:
-
第一个网站是 AI 资讯站点(https://ai-bot.cn/daily-ai-news/)
-
第二个网站是科技类资讯平台(https://www.ithome.com/)
两个网站页面结构不同,我们在 Coze 插件中分别定制了解析逻辑:
网站一:AI-Bot 新闻结构分析
页面结构较为规整,所有新闻被包含在 <div class="news-list"> 区块中,时间与内容并列存在。我们采用以下逻辑提取内容:
const newsNodes = document.querySelectorAll(".news-list li");const todayDate = new Date().toISOString().split('T')[0];const latestNews = [];for (let i = 0; i < newsNodes.length && latestNews.length < 3; i++) {const node = newsNodes[i];const dateAttr = node.querySelector("div")?.getAttribute("data-ot");if (dateAttr && dateAttr.includes(todayDate)) {const text = node.textContent.trim().replace(/s+/g, " ");latestNews.push({ paper_title: text, paper_date: todayDate, paper_star: "自动抓取", paper_abstract: "" });}}return latestNews;
网站二:IT之家首页解析逻辑
IT之家内容嵌套在 <ul class="bl"> 中,通过 <li> 遍历提取前五篇新闻。解析思路如下:
const hotList = [];const listItems = document.querySelectorAll("ul.bl li");for (let i = 0; i < listItems.length && hotList.length < 5; i++) {const title = listItems[i].querySelector("h3")?.textContent?.trim();if (title) {hotList.push({ paper_title: title, paper_date: todayDate, paper_star: "热榜", paper_abstract: "" });}}return hotList;
新闻爬取:如何判断“今天”的新闻
const todayDate = new Date().toISOString().split('T')[0]; // 获取今天日期,格式如 "2025-04-24"const dateAttr = node.querySelector("div")?.getAttribute("data-ot");if (dateAttr && dateAttr.includes(todayDate)) {// 仅当新闻块中的 data-ot 属性包含今天日期,才视为“今日新闻”...}
思路解析:
-
new Date().toISOString()生成当前时间的 ISO 格式字符串,结果形如:"2025-04-24T08:36:20.123Z"。 -
.split('T')[0]提取T字符前的日期部分,也就是"2025-04-24"。 -
我们假设网页中的某个 DOM 节点(如
<div data-ot="2025-04-24">)存储了这条新闻的发布日期,通过.getAttribute("data-ot")获取该字段。 -
使用
.includes(todayDate)判断该日期字符串是否为“今天”的,如果是,就将这条新闻加入到结果列表。
这个逻辑的核心价值在于:我们不依赖网页上可见的“发布日期文字”,而是提取结构化数据(属性值)进行判断,更可靠。
插件输出示例:
{ "today_date": "2025-04-24", "LatestPaper_list": [ {"paper_title": "OpenAI 发布 GPT-5 原型", "paper_abstract": "GPT-5 在语言理解与生成任务中取得了突破性进展……", "paper_date": "2025-04-24"}, ... ], "HotPaper_list": [ {"paper_title": "百度发布大模型产业应用白皮书", "paper_abstract": "白皮书详细阐述了大模型在工业、金融等领域的落地成果……", "paper_date": "2025-04-23"}, ... ]}
三、Make 平台流程拆解:五个节点完成自动化
在 Make 中,我们配置了一个完整的流程,如下图所示:

这个流程包括以下模块:
节点一:HTTP 请求
使用 HTTP 模块访问 Coze 插件,需要在coze开发者手册中查找填写方法。

节点二:JSON 解析
对 HTTP 返回内容进行解析,提取两个数组,进入迭代器处理。
节点三:迭代器
将数组拆分为单条内容,便于后续内容拼接与格式化,确保每条新闻被独立渲染。
节点四:文本聚合器 + 样式美化
我们使用了以下样式结构进行排版优化:即使内容是自动生成的,也力求“可读性”与“美观度”。
<div style="border: 1px solid #e0e0e0; border-radius: 10px; padding: 16px 20px; background-color: #fcfcfc;"><h3 style="font-size: 18px; color: #1a237e; margin-bottom: 12px;">? {{paper_title}}</h3><p style="font-size: 14px; line-height: 1.8; text-align: justify;">{{paper_abstract}}</p><p style="font-size: 12px; color: #999; text-align: right;">⭐ {{paper_star}} · {{paper_date}}</p></div>
节点五:微信公众号草稿推送
最后一步通过“微信公众号模块”,将生成的图文内容推送到公众号草稿箱,早上打开微信后台即可一键发布。需要注意的是,需要在微信公众号中开启开发者模式、获取apikey、设置IP白名单。


