做AI自媒体最痛苦的事情是什么?不是写稿,也不是剪视频,而是每天绞尽脑汁找选题,因为:
AI这个行业变化实在太快了!今天OpenAI搞个大新闻,明天Google又发布新模型,后天字节又整出什么黑科技。一天不看新闻,就感觉跟不上节拍了。
那该怎么办?我在想:要是有个程序能每天自动帮我收集AI新闻,还能整理成表格就好了。
最近在研究海外的工作流平台n8n,发现还真能实现这个想法!于是就手搓了一个"每日AI资讯自动收集器",每天早上8点,系统就会把最新的AI新闻整理到飞书多维表格里,方便我每天查看,从中找到高价值的最新热点选题。
下图就是完整的工作流,不复杂,就4个节点(那个limit是我测试时加的,可以删掉)
为什么要用n8n?
之前我也试过用影刀RPA+coze的组合,让程序在电脑上打开AI资讯网站,抓取页面内容,再用coze整理信息发到飞书群。
虽然能用,但这套方案有个致命缺点:笨重,电脑必须一直开着。万一哪天忘记开机,或者电脑死机了,整个流程就断了。
n8n就不一样了,它直接调用新闻API,云端运行,稳定可靠。
手把手教你搭建
搭建思路很简单:
-
获取AI新闻
-
写入飞书多维表格
第一步:设置定时触发
点击右侧加号,搜索"schedule trigger"。我设置的是每天早上8点触发,具体参数看图就行。
第二步:接入新闻API
我在学习n8n时,发现了NewsAPI,简单来说就是一个聚合了新闻的API服务,允许开发者通过简单的HTTP请求获取来自全球各种新闻源的文章和头条新闻。核心功能包括:
-
提供来自70多个国家、数千个新闻源的实时新闻数据
-
支持关键词搜索、分类筛选、日期范围等多种查询方式
-
返回结构化的JSON格式数据,包括标题、描述、URL、发布时间等
首先,打开NewsAPI的网站注册成功后,点击“Get started”,复制红框中的这段url:
https://newsapi.org/v2/everything?q=Apple&from=2025-08-17&sortBy=popularity&apiKey=API_KEY
添加“HTTP Request”,配置参数如下:
注意有几个修改:
-
q=Apple,修改成q = ai,专门抓取ai相关新闻;
-
from = 2025-08-17,删除掉,在query parameters中做了修改;
-
API_KEY 修改成你自己的apikey;
https://newsapi.org/v2/everything?q=ai&sortBy=popularity&apiKey=API_KEY
而在send parameters中,我设置了几个获取的新闻资讯的要求:
-
前一天的新闻;
-
英文内容;
-
前100条即可;
但我不懂代码,也不知道该如何写JSON格式,就给Claude发了段提示词:
Claude返回的代码如下,直接输入到JSON的文本框中,点击测试,没有问题;
{
"from": "{{ new Date(Date.now() - 24*60*60*1000).toISOString().split('T')[0] }}",
"to": "{{ new Date(Date.now() - 24*60*60*1000).toISOString().split('T')[0] }}",
"language": "en",
"pageSize": 100
}
到这里,HTTP Request节点配置好了。
第三步:数据清洗
API返回的数据格式和飞书表格的字段对不上,需要用code节点处理一下。
我在飞书表格里设置了5个字段:新闻链接、标题、新闻简要、发布日期、作者。
需要再加入一个code节点做数据清洗,还是借助Claude的帮助,输入提示词如下:
![]() |
数据清洗提示词
![]()
|
返回的代码:
// 获取输入数据
const inputData = $input.all();
// 存储转换后的数据
const outputData = [];
// 遍历输入数据
inputData.forEach(item => {
// 检查是否有articles数组
if (item.json && item.json.articles && Array.isArray(item.json.articles)) {
// 遍历每篇文章
item.json.articles.forEach(article => {
// 格式化发布日期
let formattedDate = '';
if (article.publishedAt) {
const date = new Date(article.publishedAt);
formattedDate = date.toLocaleString('zh-CN', {
year: 'numeric',
month: '2-digit',
day: '2-digit',
hour: '2-digit',
minute: '2-digit'
});
}
// 创建表格行数据
const tableRow = {
新闻链接: article.url || '',
标题: article.title || '',
新闻简要: article.description || '',
发布日期: formattedDate,
作者: article.author || '未知作者'
};
outputData.push({
json: tableRow
});
});
}
});
return outputData;
代码输入到code节点中,测试也没有问题。
第四步:最后一步,把内容写入飞书多维表格
这是最后一步,也是最关键的一步。
首先要在飞书开发者后台获取应用的API权限,这个过程比较复杂,建议直接在飞书开发者后台搜索"如何获取AppID和AppSecret"。
开发者后台链接:https://open.feishu.cn/search?from=header&page=1&pageSize=10&q=%E5%A6%82%E4%BD%95%E8%8E%B7%E5%8F%96AppID%E5%92%8CAppSecret&topicFilter=
重要提醒:多维表格一定要放在云盘里,别放知识库,不然获取Token会很麻烦。
![]() |
![]() |
节点参数配置如下:
其中,从URL里可以找到多维表格的token和表格ID:
-
token在 https://xxx.feishu.cn/base/后面的这串字符
-
表格ID在 /tbl后面的这串字符
![]() |
![]() |
还需要把上一步的输出结果用JSON的格式写入到多维表格中,代码如下:
{
"fields": {
"新闻链接": "{{ $json.新闻链接 }}",
"标题": "{{ $json.标题 }}",
"新闻简要": "{{ $json.新闻简要 }}",
"发布日期": "{{ $json.发布日期 }}",
"作者": "{{ $json.作者 }}"
}
}
效果怎么样?
每天早上8点,我打开飞书多维表格就能看到前一天的AI新闻汇总。不用再到处找选题了,直接从表格里挑有价值的内容就行。
这套系统搭建一次,就能持续使用,真正实现了"躺赢"。
你们有什么想自动化的工作流吗?评论区聊聊,说不定下期就教大家怎么搭建。
本篇文章来源于微信公众号: 思白的思考笔记
文章评论