ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

10 分钟搭第一个 n8n 自动化:从“新文章通知我”开始,不用写一行代码

10 分钟搭第一个 n8n 自动化:从“新文章通知我”开始,不用写一行代码 10 分钟搭第一个 n8n 自动化从“新文章通知我”开始不用写一行代码【免费下载链接】n8nFair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400 integrations.项目地址: https://gitcode.com/GitHub_Trending/n8/n8n“每天打开十来个网站刷更新”这件事值得被自动化掉。你真正想要的不是刷新页面而是在新内容出现的那一刻收到通知——而 n8n 正好把这个场景压缩成了三个动作选一个触发器、接一个通知节点、激活。全程不需要写一行代码本文用 n8n 仓库中的真实源码带你走完这条最小路径。两条启动路径云上注册还是自托管n8n 是一个基于 Node.js/TypeScript 的公平代码fair-code工作流自动化平台前端编辑器用 Vue3 构建后端引擎负责调度与执行。在开始搭建工作流之前先决定它跑在哪里——两条路任选其一。路径一云上注册30 秒起步。访问官方云服务仓库 README 中标注的app.n8n.cloud直接注册浏览器打开就是可视化编辑器无需安装任何东西适合想先体验、不想碰服务器的人。注意云端注册的流程会引导你选择计划个人体验可以从小流量开始。路径二自托管一条命令搞定。仓库 README.md 的 Quick Start 部分给出了官方一键安装脚本curl -fsSL https://get.n8n.io | sh该脚本位于 docker/get-n8n.sh内部通过 docker compose 拉起完整的 n8n 栈主服务、代码沙箱 runner、任务执行器等并自动生成.env配置。若想手动控制每个细节也可以按 README 提供的传统 Docker 命令部署docker volume create n8n_data docker run -it --rm --name n8n -p 5678:5678 -v n8n_data:/home/node/.n8n docker.n8n.io/n8nio/n8n容器镜像定义在 docker/images/n8n/Dockerfile默认暴露 5678 端口数据持久化到/home/node/.n8n卷。启动后打开http://localhost:5678即可进入编辑器。README 中明确写着编辑器地址就是http://localhost:5678。无论哪条路你面对的都是同一套界面——拖拽式画布。第一次登录建议直接在主界面的模板库里逛一圈仓库文档显示平台有1500 集成与 9000 社区模板几乎任何“A 事件触发 B 动作”的组合都已有人搭过。最小流程RSS 触发器 通知节点搭第一个自动化我推荐“新文章通知我”这个场景它只有两个节点却能让你完整理解 n8n 的工作流模型——触发器节点什么时候开始与操作节点触发后做什么。在画布上新建空白工作流第一步搜索并添加RSS Feed Trigger节点。这个节点在仓库中的实现位于 packages/nodes-base/nodes/RssFeedRead/RssFeedReadTrigger.node.ts。源码里它的定位是polling: true描述为 “Starts a workflow when an RSS feed is updated”当 RSS 源更新时启动工作流唯一必填参数是 Feed URL。也就是说n8n 会按轮询间隔去拉取订阅源一旦发现新条目就触发一次执行。它的触发逻辑值得一看——这正是它不会把历史文章重复推送一遍的原因。poll()方法里节点把上次检查的时间记录在工作流的静态数据中const pollData this.getWorkflowStaticData(node) as PollData; const dateToCheck Date.parse( pollData.lastItemDate ?? pollData.lastTimeChecked ?? moment().utc().format(), );然后遍历本次拉取到的条目只把isoDate晚于上次检查时间的条目返回feed.items.forEach((item) { if (item.isoDate Date.parse(item.isoDate) dateToCheck) { returnData.push(item); } });拉取完成后再用当前 feed 中最新条目的时间覆盖pollData.lastItemDate作为下次判断的基准。每次触发产出的数据里包含了标题、链接、发布时间、摘要等标准 RSS 字段——这些字段就是下一步通知内容的原材料。第二步接一个通知节点。n8n 的通知选择非常多两处最容易上手的实现发邮件添加Send Email节点实现见 packages/nodes-base/nodes/EmailSend/EmailSend.node.ts使用 SMTP 协议发送配置发送人、收件人、主题即可。它支持 HTML 与纯文本两种格式主题和正文都可以直接用表达式引用上游字段例如{{ $json.title }}。发到 Telegram添加 Telegram 节点实现见 packages/nodes-base/nodes/Telegram/Telegram.node.ts操作选sendMessage填入 chatId可以是你的个人 ID 或群组 ID和文本。机器人消息天然适合“短标题 链接”的推送形态。把 RSS 触发器连到通知节点填好参数点击Execute workflow手动跑一次验证最后把工作流状态切到Active——自动化就上线了。整个过程不写一行代码耗时基本都在填参数上。上图就是 n8n 的可视化编辑器左侧是可搜索的节点库中间画布负责连线编排右侧是当前节点的参数面板——刚才描述的最小流程正是在这样的画布上完成的。三个立刻能用的模板变体“新文章通知我”只是一个起点同样的骨架稍作调整就能覆盖三种常见需求而且每种都对应仓库里现成的节点类型1. 定时汇总Schedule Trigger RSS/邮件。如果你不想要“实时轰炸”可以用Schedule Trigger实现见 packages/nodes-base/nodes/Schedule/ScheduleTrigger.node.ts替代 RSS 触发器它支持按分钟、小时、天等间隔触发也支持 Cron 表达式典型用法是每天早上 8 点把前一天的文章清单汇总成一封邮件。触发器之后的流程与前面完全一致。2. 即时回调Webhook Telegram。如果你的信息来源有 Webhook比如 GitHub 的 release 通知、代码仓库的提交事件可以改用Webhook节点实现见 packages/nodes-base/nodes/Webhook/Webhook.node.ts它提供一个可公网访问的 URL对方把事件 POST 进来n8n 即刻触发下游的 Telegram 消息。相比轮询 RSSWebhook 是“事件到达才执行”延迟最低也最省资源。3. 从文章到卡片RSS 更多处理节点。在 RSS 触发器与通知节点之间还可以插入任意中间节点——比如用 HTML 提取节点把摘要清洗成纯文本、用代码节点拼接消息模板甚至接上 AI 节点让模型先写一段推荐语再推送。这正是 n8n 与普通“IFTTT 式”工具的区别节点可以随意串联每个节点都能拿到上游完整数据做变换。从第一个工作流开始回到最初的问题为什么是 n8n因为它的学习曲线几乎是平的——两个节点就能跑通一个真实可用的自动化而当你需要更复杂的能力代码节点、AI 编排、条件分支时同一套界面又不会成为天花板。仓库里 1500 集成、9000 模板意味着你今天搭的“新文章通知”明天稍加改动就能变成客服工单提醒、运营数据播报、CI 构建通知。10 分钟一个节点、一个节点、一次激活。你的第一条自动化现在就可以开始了。【免费下载链接】n8nFair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400 integrations.项目地址: https://gitcode.com/GitHub_Trending/n8/n8n创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进