n8n 工作流自动化入门指南

前言

在数字化时代,重复性工作耗费了我们大量宝贵时间。每天手动复制粘贴数据、定时检查邮件、跨平台同步信息——这些琐碎的任务不仅效率低下,还容易出错。

n8n(发音为 “n-eight-n”)是一个强大的开源工作流自动化平台,它让你能够可视化地连接各种应用和服务,自动执行重复性任务,从而专注于真正重要的工作。

一、n8n 简介

1.1 什么是 n8n?

n8n 是一个开源的工作流自动化工具,它允许你:

  • 通过可视化界面创建自动化工作流
  • 连接 400+ 不同的应用和服务
  • 自托管部署,数据完全自主控制
  • 编写自定义 JavaScript/Python 代码
  • 内置 AI/LLM 节点,支持 GPT、Claude 等大模型

1.2 n8n 的特点

特点 说明
开源免费 MIT 许可证,可免费使用,商业版本提供更多功能
自托管 部署在自己的服务器,数据不经过第三方
可视化编辑 拖拽式节点编辑器,所见即所得
代码执行 支持 JavaScript 和 Python 编写自定义逻辑
AI 集成 内置 LLM 节点、向量数据库连接器
定时执行 支持 Cron 表达式,可定时触发工作流

1.3 n8n vs 其他自动化工具

平台 n8n Zapier Make (formerly Integromat)
价格 开源免费 + 付费云版本 按任务数计费 按操作数计费
部署方式 自托管或云端 仅云端 仅云端
代码支持 JavaScript/Python 有限 有限
AI 集成 强大内置支持 需要第三方集成 需要第三方集成
自定义程度 极高 中等 中等

二、核心概念

2.1 节点(Nodes)

节点是 n8n 工作流的基本构建块。每个节点代表一个操作,比如:

  • 触发节点:工作流的起点,如 Webhook、定时器、Google Sheets
  • 动作节点:执行具体操作,如发送邮件、创建数据库记录
  • 逻辑节点:控制工作流逻辑,如 IF 条件、Switch 分支
  • AI 节点:LLM 调用、向量存储、嵌入生成等

2.2 工作流(Workflow)

工作流是由多个节点连接而成的自动化流程。数据从左侧流入,经过各个节点的处理和转换,最终到达右侧输出。

2.3 触发器(Triggers)

触发器决定工作流何时执行:

  • Webhook 触发:当外部请求到达时触发
  • 定时触发:按 Cron 表达式定时执行
  • 事件触发:当特定事件发生时(如收到新邮件)
  • 手动触发:手动点击执行

三、快速入门

3.1 安装 n8n

Docker 部署(推荐):

1
2
3
4
5
docker run -d \
--name n8n \
-p 5678:5678 \
-v ~/.n8n:/home/node/.n8n \
n8nio/n8n

访问 http://localhost:5678 即可打开 n8n 界面。

Node.js 安装:

1
2
npm install -g n8n
n8n start

3.2 创建你的第一个工作流

让我们创建一个简单的「定时获取天气并发送通知」的工作流:

步骤 1:添加触发节点

  1. 点击 “+” 添加节点
  2. 选择 Schedule Trigger(定时触发)
  3. 设置每小时执行一次:0 * * * *

步骤 2:添加 HTTP Request 节点获取天气

  1. 添加 HTTP Request 节点
  2. 配置:
    • Method: GET
    • URL: https://api.weather.com/v3/wx/conditions/current?apiKey=YOUR_KEY&units=m&postalKey=Beijing,CN

步骤 3:添加条件判断

  1. 添加 IF 节点
  2. 配置条件:{{ $json.temp }} > 30(温度大于30度时)

步骤 4:发送通知

在 True 分支添加 Discord/Webhook 节点,发送高温预警。

3.3 n8n 界面 overview

1
2
3
4
5
6
7
8
9
10
11
12
13
┌─────────────────────────────────────────────────────────┐
│ ┌─────────┐ ┌─────────────┐ ┌──────────────────┐ │
│ │ Trigger │ → │ HTTP Request│ → │ IF │ │
│ │ (Clock) │ │ (Weather) │ │ (Condition) │ │
│ └─────────┘ └─────────────┘ └────────┬────────┘ │
│ │ │
│ ┌───────────────┴───────────┐ │
│ ↓ ↓ │
│ ┌─────────────┐ ┌─────────────┐
│ │ True 分支 │ │ False 分支 │
│ │ (发通知) │ │ (不做处理) │
│ └─────────────┘ └─────────────┘
└─────────────────────────────────────────────────────────┘

四、实战案例

4.1 案例:RSS 订阅自动推送

需求:定时抓取技术博客 RSS,筛选关键词,通过微信/钉钉推送新文章。

实现:

1
Schedule Trigger → RSS Feed Read → IF (关键词过滤) → HTTP Request (推送)

关键配置:

  1. Schedule Trigger: 0 9,18 * * *(每天早9点、晚6点执行)
  2. RSS Feed Read: 添加多个博客 RSS 地址
  3. IF: $json.content 包含 “AI” 或 “LLM”
  4. HTTP Request: 调用企业微信机器人 Webhook 推送

4.2 案例:AI 自动回复邮件

需求:收到邮件后,使用 GPT-4 自动生成回复建议。

实现:

1
Email Trigger (IMAP) → LLM Chain (GPT-4) → Email Reply

4.3 案例:数据库数据同步

需求:将 MySQL 中的订单数据同步到 Notion 数据库。

实现:

1
Schedule Trigger → MySQL (查询) → Transform (数据转换) → Notion (创建页面)

五、AI 集成

n8n 提供了强大的 AI 节点支持,让构建 AI 应用变得简单:

5.1 内置 AI 节点

  • LLM Chain: 调用 OpenAI、Anthropic、Ollama 等大模型
  • Embeddings: 生成向量嵌入(OpenAI、Azure、Hugging Face)
  • Vector Store: 连接 Pinecone、Weaviate、Qdrant 等向量数据库
  • AI Agent: 构建自主决策的 AI Agent

5.2 实战:构建 RAG 问答系统

1
Webhook Trigger → Search Vector Store → LLM (生成回答)

配合 n8n 的向量数据库连接器,可以快速搭建一个基于私有知识的问答系统。

六、最佳实践

6.1 工作流设计

  • 单一职责:每个节点只做一件事,便于调试和维护
  • 错误处理:添加 IF 节点检查上一步是否成功
  • 日志记录:使用「错误触发」节点捕获异常

6.2 安全建议

  • 使用环境变量存储敏感信息(API Key、密码)
  • 启用 2FA 保护 n8n 管理界面
  • 定期备份工作流和数据
  • 自托管时启用 HTTPS

6.3 性能优化

  • 避免在循环中执行重型操作
  • 使用「批量处理」节点合并多个请求
  • 启用「执行超时」避免工作流卡死

七、总结

n8n 是一个功能强大且灵活的开源自动化平台,它:

  • ✅ 开源免费,可完全自托管
  • ✅ 可视化编辑,易于上手
  • ✅ 支持代码扩展,高度可定制
  • ✅ 内置 AI 节点,紧跟技术趋势
  • ✅ 社区活跃,文档完善

无论你是想自动化日常办公任务,还是构建复杂的 AI 应用,n8n 都是一个值得尝试的选择。

下一步:

  1. 安装 n8n,开始你的第一个工作流
  2. 探索 n8n 社区分享的数千个预制模板
  3. 加入 n8n Discord 与全球用户交流

参考资料:n8n 官方文档