RSS 只有摘要不够用,Make 九个模块喂饱 Notion 知识库
每天要刷几十个网站追资讯的人,大概率都干过这种事,看到一篇有价值的文章,手动复制正文,粘进 Notion,标题是英文的还得再开个翻译窗口,一篇搬完十几分钟就没了。第二天,再来一遍。
这活有省力的干法。用 Make 搭一条流水线,九个模块串起来,RSS 订阅源一有更新就自动抓内容,标题翻译好,正文转成 Markdown 写进 Notion,同时把原文网页转成一份 A4 的 PDF 存进 Google Drive。全程零代码,搭完就在后台自己跑。
这套东西适合谁,每天要大量读资讯的人都算。做行业研究的要盯竞争对手和监管动态,做内容的要追热点和选题,做知识管理的要把散落各处的信息汇成自己的库。共同点是采集这个环节又费时又没含量,正好整条外包给机器。
这篇写给要动手交付的人。九个模块逐个过配置要点,末尾附四个高频翻车点和三条验收标准。企业客户里提资讯聚合需求的不少,老雷一般就拿这条流水线当起手式,结构清楚,后面想加什么模块都好改。
先看整条链怎么串
九个模块按顺序排开是这样的。
RSS 模块盯着订阅源,发现新文章就往下传。OpenAI 模块接手标题,翻成简短英文。JSON 模块把翻译结果解析出来。Text Parser 模块把标题截到 90 字符以内,因为 Notion 的属性字段有 100 字符上限,得留余量。Markdown 模块把 HTML 正文转成 Markdown。PDF.co 模块拿着原文链接转出一个竖版 PDF。Google Drive 模块把 PDF 上传备份。收尾是两个 Notion 模块,一个建条目填属性,一个把 Markdown 全文塞进条目页面。
一句话概括这条链的分工,正文走 Markdown 进 Notion 方便检索,原貌走 PDF 进 Drive 留底,翻译过的标题走条目名方便扫一眼就知道讲了什么。
多解释一句为什么要留 PDF 这道备份。很多 RSS 源只给摘要不给全文,而网页这种东西今天在明天就可能改版下线,等你想回头查证的时候链接已经打不开,那种感觉谁遇过谁知道。把原文链接当场转成 PDF 存进 Drive,等于给每条资讯拍了一张全底片,日后要引用、要核查,都有据可查。
信息只采集一次,之后怎么搜、怎么读、怎么喂给 AI 提炼,都是后话。

动手前备齐三样东西
交付这类活,我习惯开工前把料备齐,省得搭到一半停下来等账号审批。
Notion 侧先建好知识库数据库,属性字段六个。标题存翻译后的英文标题,创建时间和更新时间存条目自身的日期,发布时间存原文的发布时间,网址存原文链接,文件字段存 Google Drive 里那份 PDF 的链接,类型用 URL 就够。
账号侧准备三把钥匙。OpenAI 的 API Key 加 Organization ID,PDF.co 的 API Key,这两个注册就能拿。第三把是 Google Cloud 的 OAuth 凭据,配置步骤多一些,放到模块要点里单说。
Make 侧新建一个场景,名字随意,比如就叫 Notion 知识库。顺手把场景的时区核对一遍,定时调度的触发时间跟时区走,这个不改,后面上线会发现采集时间整体错位。
九个模块逐个过要点
RSS 模块,选 Watch RSS Feed Items,填订阅源地址,获取数量先设 1,想一次多收可以调到 2 或 3。有个新手必踩的细节,首次运行时时间范围要选 All 拿全部历史内容,选「从现在开始」会因为没有任何新输入,整条流水线空转一次什么都不出。配置完手动 Run 一次,看输出里标题、HTML 正文、来源、发布时间这些字段齐不齐。
OpenAI 模块,选 Create Chat Completion,模型用 GPT-3.5 就够,翻译这种简单任务杀鸡不用牛刀,成本也压得低,Max Tokens 设 1000。System 提示词让它扮演专业翻译,把传入的标题翻成简短的英文,如果本来就是英文就改写得更简短,并且严格按固定的 JSON 格式输出,输出完不带任何多余符号。提示词里的标题占位替换成 RSS 模块输出的 Title 字段,每次运行就自动传入新标题。为什么要折腾成 JSON 输出,后面解析和截取两步都要靠这个结构,散文本没法映射。
JSON 模块,选 Parse JSON,输入接 OpenAI 输出的 Content 字段,把那段 JSON 文本解析成能映射的结构。
Text Parser 模块,选 Match Pattern,正则写 ^.{1,90},把翻译结果截到 90 个字符,Global Match 打开。这一步专门伺候 Notion 的属性上限,别省。
Markdown 模块,选 HTML to Markdown,输入接 RSS 输出的完整内容字段。RSS 给的正文是一坨 HTML 源码,直接存进 Notion 没法好好阅读和检索,转成 Markdown 才方便日后全文搜索。
PDF.co 模块,选 Website to PDF。关键参数四个,URL 填 RSS 输出的原文链接,输出文件名用刚才截好的翻译标题,Orientation 选 Portrait 竖向,Paper Size 选 A4,再把「等待加载完成」打开,确保网页完全加载后才转换。很多 RSS 源只给摘要不给全文,把原文链接直接转成 PDF,就是给内容留一份完整底档。
Google Drive 模块,选 Upload a File,选好上传的目标文件夹。第一次连 Drive 得先去 Google Cloud Console 建凭据,流程七步走完。新建一个项目,搜索并启用 Google Drive API,配 OAuth 同意屏幕选外部应用并填好应用名和邮箱,已获授权网域里加上 integromat.com,这是 Make 的旧域名,接着添加 Drive 的查看和完整访问两个 API 范围,把你自己的 Google 邮箱加为测试用户,然后创建 OAuth 客户端 ID,重定向 URI 填 https://www.integromat.com/oauth/cb/google-restricted。拿到 Client ID 和 Client Secret 填进 Make 的高级选项,选账号授权一次就通。
Notion 建条目模块,选 Create a Database Item,连上后搜刚建的库。字段映射四条,标题接 Text Parser 截好的翻译标题,网址接 RSS 的原文 URL,发布时间接 RSS 的发布时间并记得开启包含时间,不开这个开关,存进来的日期会丢掉时分秒只剩天。文件接 Google Drive 上传后返回的文件链接。
Notion 正文模块,再拖一个 Notion 模块选 Append Page Content,Database ID 用上一个模块刚创建的条目 ID,条目是它自己刚建的,ID 现成的。加一个 Paragraph,文本接 Markdown 模块的输出。到这一步,每个条目既有属性又有完整正文。
九个模块连完,点 Run 从头跑一遍,回到 Notion 看结果,新条目带着翻译标题、发布时间、原文链接、Drive 的 PDF 链接和 Markdown 全文,齐了。

四个高频翻车点
下面这四个问题,是我把这条链搭起来跑的过程中一个个撞上的,每个都有解法,提前知道能省不少排查时间。
第一个,OpenAI 返回的 JSON 不标准。 模型偶尔会在 JSON 结尾多带一个逗号或句号,解析模块当场报错。两个处理办法,在 Flow Control 里给模块挂错误处理,设成忽略错误继续跑,或者回到上一步重跑一次。提示词里那句不要添加任何额外符号就是防这个的,但防不住所有时候,错误处理必须配上。
第二个,换了订阅源之后字段对不上。不同源的输出结构不一样,有的源把正文放在 Description 字段,有的放在别的地方。老雷给大家提个醒,每换一个源,先单跑 RSS 模块看输出,确认正文到底藏在哪个字段,再去改后面的映射,想当然映射是最常见的返工原因。
第三个,Google Drive 连接莫名失效。Google 对外部应用的授权有时效,隔一阵子连接就过期,流水线跑到一半报错又找不到代码问题的时候,先想到这个。回 Make 重新建一次 Drive 连接,重新授权就好。
第四个,PDF 里图片缺一半。不少页面要滚动到底才加载完图片,PDF.co 默认等不到。解法是在它的 Profiles 里加一段自动滚动的 JSON 配置,让页面完全加载后再截,配合「等待加载完成」选项,双保险。

验收和下一步
交付前按三条验收。跑一遍全流程,Notion 里出现新条目,属性五项不缺。在条目里能搜到 Markdown 全文。点开文件字段里的 Drive 链接,PDF 打得开、图片完整。三条全过才算交付,少一条都先别给客户看。
验收过了,再把场景的调度从手动切成定时,让它按频率自己在后台跑,这一步做完才算真正交出去。上线的头几天建议隔天看一眼运行记录,稳定了再拉长巡检间隔。
这条流水线真正值钱的地方在后面。资讯自动汇进一个统一的库,Drive 里躺着原貌备份,需要提炼的时候把库里的内容接给 ChatGPT 做知识提取,从资讯到知识的管道就通了,采集这个环节再也不用占人。库越攒越厚,检索和二次加工的价值才慢慢显出来,这也是为什么值得在一开始就把全文和备份都存齐。
回到开头那个场景,十几分钟搬一篇文章的活,变成后台自动跑的一条链。老雷的建议是别急着堆订阅源,先拿一个源把九个模块完整跑通,三条验收全过了,再往里接第二个第三个源。流水线这东西,跑稳一条,胜过搭废十条。