2026-09-30 · 原文发布日
每日多主题新闻摘要自动发Slack并存档
每天早上8点按配置的主题列表逐个调用Webz.io新闻搜索,由GPT-4.1-mini为每个主题挑选最多五条重要新闻,返回标题、媒体、为何重要和链接的结构化字段;跨主题按URL去重后拼成一条Slack摘要发到指定频道,同时把每条新闻追加一行到Google Sheets存档。没有新内容就静默跳过,不发空消息。
原文要点
原工作流每天08:00(按工作流时区)读取摘要配置(主题列表、回看天数、篇数、Slack频道),按主题逐个由GPT-4.1-mini调用Webz.io新闻搜索工具,为每个主题挑选最多五条重要新闻,返回headline、publisher、why_it_matters、url结构化字段;跨主题按URL去重后拼一条Slack消息发到指定频道,并把每条新闻追加一行到Google Sheets(表头date, topic, headline, publisher, why_it_matters, url);没有新闻就静默停止,不发空消息。
这次做成什么
搭一条“每日多主题新闻→AI筛选→Slack摘要+Sheets存档”的流水线。练习方案为本站设计:先只配一个主题、回看1天手动跑一次,确认四个结构化字段和去重逻辑后再扩展主题列表。
准备什么
- n8n实例(云端或自托管)
- OpenAI API key(原流程用GPT-4.1-mini,可换成其他支持工具调用的模型)
- Webz.io账号及API token
- Slack工作区管理员权限(需建应用、授权并邀请机器人进频道)
- Google账号及一个新建Sheets表格
具体怎么做
配齐三类凭据
在n8n里新建:OpenAI凭据挂到Chat Model节点;Bearer Auth凭据填Webz.io token挂到新闻搜索节点;Slack OAuth凭据勾选chat:write和channels:read权限,创建后把机器人邀请进目标频道。
建存档表与摘要配置
新建Google Sheet,首行写date, topic, headline, publisher, why_it_matters, url,连接Google Sheets OAuth凭据并选中该表。在Digest settings里先只填一个主题如renewable energy、lookbackDays=1、articleCount=5、Slack频道名。
单主题手动演练
手动执行:确认每个主题调用Webz.io搜索后,GPT-4.1-mini按下方提示词只输出结构化JSON;检查合并节点把多主题结果按URL去重;有结果时Slack收到一条聚合摘要、Sheets每篇追加一行。
验证空结果并激活定时
把lookbackDays改成极短或主题改成冷门词再跑一次,确认零结果时流程静默停止、Slack和Sheets都无动作。然后在Workflow Settings设好本地时区,扩展主题列表(逗号分隔),激活每天08:00定时。
可直接复制的材料
新闻筛选与结构化输出提示词
本站独立编写的练习提示词,非原模板原文;字段名与原文描述的结构化字段对齐,占位符按n8n表达式调整。
你是新闻编辑。使用Webz.io新闻搜索工具,围绕主题「{{ $json.topic }}」搜索最近{{ $json.lookbackDays }}天的英文新闻,挑出最多{{ $json.articleCount }}条最重要的报道。
只输出JSON数组,不要任何多余文字。每个元素字段:
- headline:新闻标题原文
- publisher:媒体名称
- why_it_matters:一句中文,说明这条新闻为何重要
- url:报道链接
如果没有足够重要的新闻,输出空数组[]。Digest settings配置示例
本站编写的示例配置。topics逗号分隔;频道需先邀请Slack机器人加入;表头必须与Sheets首行完全一致。
{
"topics": "renewable energy, european grid policy",
"lookbackDays": 1,
"articleCount": 5,
"slackChannel": "#daily-news-demo",
"sheetHeaders": ["date", "topic", "headline", "publisher", "why_it_matters", "url"]
}输入与输出示例
本站虚构演示,未实际运行;媒体名与链接均为占位,真实排版以原模板Slack节点为准。
输入
单主题演练:topic=renewable energy,lookbackDays=1,articleCount=5,Webz.io返回7条候选,其中2条URL相同、1条为旧闻。对应输出
Slack频道#daily-news-demo收到一条消息:
📰 每日新闻摘要 · renewable energy
1. EU approves cross-border grid funding package — Demo Energy Daily
为何重要:跨境电网投资直接影响欧洲新能源并网速度。
https://example.test/news/grid-funding
2. Offshore wind auction hits record low price — Demo Power Times
为何重要:电价新低预示海上风电成本继续下探。
https://example.test/news/wind-auction
(共2条,已存档至Google Sheets)
Sheets新增2行,date列为当天日期。做完检查这些
- 每个主题返回的都是合法JSON数组,字段headline/publisher/why_it_matters/url齐全
- 两个主题选中同一URL时,最终Slack消息和Sheets里只出现一次
- Slack只收到一条聚合消息而不是每主题一条
- 零结果演练时Slack无消息、Sheets无新行,流程正常结束不报错
容易卡住的地方
- Slack机器人未邀请进频道会发消息失败,报channel_not_found
- Webz.io用Bearer Auth,误选成Query Auth会导致401
- Sheets表头拼写与配置不一致会追加错位或失败,why_it_matters含下划线别打错
- 08:00按工作流时区而非浏览器时区,时区没改会错峰发送
- GPT-4.1-mini的工具调用能力依赖节点版本,换模型时需确认支持tool calling
- Webz.io与OpenAI各自计费,原文未给出具体额度承诺
本站借助AI整理来源事实,独立编写中文操作指南与示例。示例不代表实际运行结果;来源效果尚未由本站独立复现。付费模板与模型、服务费用分别计算。
- 原文标题
- Post a daily multi-topic news digest to Slack and Google Sheets with Webz.io and GPT-4.1-mini
- 原作者
- Webz.io
- 原始发布日期
- 2026-09-30T09:25:50.453Z
- 来源
- https://n8n.io/workflows/20199