icon
网址
type
Post
status
Published
date
Feb 11, 2026
slug
n8n-automate-blog-sync
summary
使用 n8n 自动化工作流监测王孟源博客更新,并将内容同步到 Notion 知识库。工作流包括 RSS 监控、数据处理和 Notion 同步,能够即时推送新回复、自动归档文章,并智能判断是追加内容还是创建新页面。Notion 的强大数据库功能和 API 支持使得自动化剪藏变得高效便捷。
tags
教程
工具
开发
思考
category
技术分享
上周末折腾了一天 n8n 工作流,实现了自动监测王孟源博客更新,然后将更新内容自动同步归档到 Notion 知识库里。
起因
王孟源先生是一位物理学博士,曾在哈佛大学任教,后转入金融业工作。退休后他在台湾联合报开设博客,专注于国际政治、经济金融、科技发展等领域的深度分析。他的文章以逻辑严密、论证充分著称,评论区经常能看到高质量的讨论,有时一条评论就有几千字的深入交流。
我长期关注他的博客,但内容分散在博客上,我想做笔记或回顾时很不方便。
最初我试过手动复制到 Notion,但很快就放弃了——太繁琐,量太大,而且经常忘记。所以我希望把这个流程自动化。理想的方案是:RSS 检测到新回复,Telegram 立刻通知,同时 Notion 自动归档。如果是新文章就创建页面,如果是已有文章的新回复就追加到末尾。
使用 n8n 就可以实现这个自动化工作流。
n8n 是一个开源的工作流自动化工具,类似 Zapier 或 Make,但有几个关键优势让我选择了它:可以自己部署(数据掌握在自己手里)、完全免费、支持复杂的条件判断和循环、有丰富的 API 集成能力。更重要的是,它有可视化的节点编辑器,调试起来很直观——每个节点的输入输出都能实时查看,出了问题能马上定位。虽然也可以直接写 Python 脚本实现,但 n8n 的模块化设计和内置的错误处理、定时触发、重试机制,能省很多基础设施的工作。
工作流设计
整体流程分为三个主要部分:RSS 监控、数据处理、Notion 同步。
主流程(Mermaid 流程图):
错误处理(独立分支):
流程节点说明
1. 监测RSS源
由于王孟源先生的博客原址在台湾联合报平台上,访问速度较慢且不够稳定。热心网友搭建了镜像网站 wmyblog.site,不仅提供了更快的访问速度,还提供了 RSS 订阅源(
https://wmyblog.site/rss.xml),这让自动化同步成为可能。第一个节点就是专门用来检测 RSS 源更新的节点,每小时检查一次。如果检测到有新的回复,就会激发(trigger)整个工作流。
2. 获取更新的内容
接收到 RSS 更新后,可以用 n8n 的 HTTP Request 节点抓取网页信息,并用 HTML 节点筛选和格式化内容。
HTTP Request 节点
HTTP Request 节点是 n8n 中最常用的节点之一,用于发送 HTTP 请求获取网页内容或调用 API。在这个工作流中,它负责访问博客页面,获取完整的 HTML 源代码。对于网页抓取来说,我主要需要返回的 HTML body,它包含了页面的所有内容。
HTML 节点
HTML 节点用于从 HTML 源代码中提取特定内容,类似于网页爬虫中的解析器。它支持两种提取方式:CSS 选择器和 XPath。在这个项目中,我用 CSS 选择器提取了文章标题、正文内容和发表日期。例如,用
.article-title 提取标题,用 .article-content 提取正文。这个节点会自动处理 HTML 标签,返回纯文本或保留指定的格式,非常适合从网页中提取结构化数据。这两个节点配合使用,就实现了 “访问网页 → 提取内容” 的完整流程,实现类似爬虫的功能,从博客页面提取四个关键信息:
- 标题(包含分类标签,如【基础科研】)
- 文章 URL
- 正文内容
- 新的回复内容
- 发表日期
3. 查询博客是否已经剪藏到 Notion 知识库
我打造这个工作流的主要目的就是为了将博客剪藏到 Notion 知识库里。
选择 Notion 主要是因为它的数据库功能强大(支持多维度筛选、排序、多视图)、API 完善(可以实现自动化)、跨平台同步、全文搜索高效。更重要的是,Notion 的页面结构灵活,页面间可以相互链接形成知识网络,非常适合构建知识库。
Notion 现在提供非常强大的 Notion AI,挂载知识库后,可以检索知识库中的文章,提取信息回答问题,并附上来源链接,基本上可以规避 AI 的幻觉问题,而且遇到文中的专业术语(如 “JASSM 导弹”“量子霸权”),直接在知识库内提问,AI 会结合上下文给出准确解释,而不是泛泛的通用回答。
随着自动化剪藏积累的内容越来越多,知识库的价值也会增长。持续积累的结构化内容,是 AI 发挥价值的基础——这也是我选择自动化剪藏的重要原因。
在自动化同步时,有个问题需要处理:王孟源先生会时不时在旧博文下面更新回复内容和追加内容。这就需要在剪藏时先判断,RSS 的更新是一篇全新的博文,还是已有博文的新增回复。
如果不做这个判断,每次旧博文有新回复时,工作流都会把整篇博文(包括正文和所有历史评论)重新剪藏一遍,导致 Notion 中出现大量重复内容。
所以在工作流设计中,需要先查询 Notion 数据库,使用文章超链接作为唯一标识判断:
- 如果查询有结果:说明这篇博文已经剪藏过,本次更新是新增的回复内容,应该执行“追加内容”的操作
- 如果查询无结果:说明这是新博文或从未剪藏过的博文,应该执行“创建新页面”并且全文剪藏的操作
这样既避免了重复剪藏全文,又能确保新回复内容被完整记录。
查询 Notion 数据库节点有一个配置要点:
- 需要开启“即使这一节点运行失败,也继续整个工作流”(Continue On Fail),这样查询无结果时也不会中断流程;
- 还需要开启“哪怕没有查询结果也输出空数据”(Always Output Data), 即使没查到也要输出空数据,不然的话这一步完成运行,没有结果的话,整个工作流就结束了,下一步判断节点没有办法被激活。
4. IF 判断节点
如果在数据库中查询到了结果,则说明这篇博文已经剪藏过,直接把新增的回复内容“追加”到文章结尾就可以了。这个判断逻辑是很容易实现的。
难点在于,怎么在数据库中查询不到结果,而查询节点输出空数据的情况下,让判断节点做出正确的判断。
我采用的逻辑是,空数据里面没有任何可以处理的对象。那么,如果上一个节点输出的结果有内容(对象),也就是如果
$('Get many database pages').item.json.id 存在(翻译一下就是,查询节点输出的结果item里JSON对象至少1个有编号id),就说明查询到了结果,反之则结果为空,也就是没有查询到结果。5. 追加最新回复内容(查询到结果的分支)
如果文章已存在,则调用 Notion API 追加评论到页面末尾:
6. 全文剪藏博文(未查询到结果的分支)
如果文章不存在,先提取标题中的分类标签。这是唯一的自定义代码节点:
调用 Notion API 在数据库创建新页面,自动填入标题、Tags、URL、发表日期和正文:
7. Telegram 通知节点
在三个关键位置发送 Telegram 通知:
- 获取更新的内容之后,即时推送新回复内容,方便第一时间阅读
- 追加最新回复内容之后,通知评论已追加
- 创建新页面全文剪藏博文之后,通知新页面已创建
最终工作流视图

迭代过程
这个看起来简洁的流程,其实中间也经历了推倒重来。
第一版:Notion 节点的“2000 字符限制”
一开始,我用的是 Notion 节点写入最新回复和剪藏全文,但是它有“2000 字符限制”,这个限制对于追加最新回复没什么问题,大部分回复内容都不会超长,但是如果全文剪藏就会出错。我的第一个解决方案是用 Code 节点把长评论分割成多个 paragraph blocks。于是写了两个 Code 节点:
reply2blocks(50+ 行代码):
blog2blocks(60+ 行代码):
代码写到一半时,我在想,使用 Notion API 应该可以绕过这个字符数限制。我用 Notion AI 确认了一下,2000 字符限制针对的是单个富文本对象,不是整个 paragraph block。 如果使用 Notion API 直接传递长文本,Notion 会自动处理。
第二版:简化
这样一来,能让 API 做的,就不用我自己做了。
第一个处理最新回复内容的 Code 节点删除,追加回复内容的 Notion 节点换成了 Notion API 节点(通过 HTTP Request 节点加header认证实现的)。
处理博文内容的 Code 节点简化到只剩下清理标题和提取标签、全文, 用(通过 HTTP Request 节点加header认证实现的)Notion API 节点替换原来的 Notion 节点,实现创建新页面和剪藏全文。
成果
现在这个工作流每小时自动运行,实现了:
- 新回复即时 Telegram 通知
- 博客文章自动归档到 Notion
- 标题分类自动提取为 Tags
- 智能判断追加还是创建新页面
虽然花了一天半,但一次配置好后就不用管了,对于我这种赛博小松鼠来说,还是挺省心的。
推荐 Notion
Notion 是一个集笔记、数据库、项目管理于一体的全能型工作空间。它的核心优势在于灵活且强大——你可以用它来记笔记、管理任务、构建知识库,甚至搭建个人网站。
对于知识管理来说,Notion 最大的亮点是它的数据库功能。不同于传统笔记软件的文件夹结构,Notion 的数据库可以让你用多维度视图(表格、看板、日历、画廊)来组织同一批内容。比如这次我用它来归档博客文章,就可以按标签筛选、按日期排序、按分类查看,同一份内容有多种浏览方式。
更重要的是,Notion 提供了完善的 API,这让自动化非常方便容易。像这次的工作流,就是通过 Notion API 实现的自动剪藏和内容追加。这种开放性让 Notion 不仅仅是一个笔记工具,更是一个可以和其他工具联动的数据中心。
如果你也有知识管理的需求,或者想把分散在各处的信息整合到一起,不妨试试 Notion。虽然Notion AI 是收费功能,但 Notion 本身有免费版本,个人使用完全够用。
我也推荐二一老师的 Notion 课程,可以先看里面的几篇免费试读内容,了解一下 Notion。

- 作者:Neo Zed
- 链接:https://musingpages.com/technology/2026/02/11/n8n-automate-blog-sync
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。
相关文章


