本文介绍如何使用 N8N 打造自己的新闻聚合器:

  • • 构建自己的新闻源

  • • 抓取新闻

  • • 按照格式整理新闻

  • • 使用存储

  • • 飞书通知

  • • 企微通知

  • • 其他通知方式

安装运行

安装运行可以参考官方文档或者我之前的文章:

新闻来源

如果我们有经常阅读的网站,如果没有的话我们可以网上搜一下 RSS 新闻来源,就会有很多文章分享自己常用的新闻网站。

比如:

大家记住 RSS 地址不是来给我们阅读的,打开是一个 XML,比如这样:

图片

我们选取一些自己喜欢的网站即可,整理记录成如下格式:

<span data-cacheurl="" data-remoteid="" data-lazy-bgimg="https://mmbiz.qpic.cn/mmbiz_svg/gQQO820rz5VCtmdAQaE0SGpZibIfuKhckg2YZfiaicc0Gf5Of25ZlZtfKI9gAgTcQzV6VGdxo50bicIhTV3yJm3vIhQ3qsUGHWUic/640?wx_fmt=svg&amp;from=appmsg" data-fail="0"></span><code><span leaf="">[</span><span leaf="">&nbsp;</span><span leaf=""><br></span><span leaf="">&nbsp;&nbsp;</span><span><span leaf="">"https://www.theverge.com/rss/index.xml"</span></span><span leaf="">,</span><span leaf="">&nbsp;&nbsp;</span><span leaf=""><br></span><span leaf="">&nbsp;&nbsp;</span><span><span leaf="">"https://www.wired.com/feed/rss"</span></span><span leaf="">,</span><span leaf="">&nbsp;&nbsp;</span><span leaf=""><br></span><span leaf="">&nbsp;&nbsp;</span><span><span leaf="">"https://techcrunch.com/feed/"</span></span><span leaf=""><br></span><span leaf="">]</span></code>

N8n 流程

设置RSS源

首先新建一个空流程, 添加 Edit Fileds 节点用来记录我们的新闻网站来源,

![添加](data:image/svg+xml,%3C%3Fxml version=‘1.0’ encoding=‘UTF-8’%3F%3E%3Csvg width=‘1px’ height=‘1px’ viewBox=‘0 0 1 1’ version=‘1.1’ xmlns=‘http://www.w3.org/2000/svg' xmlns:xlink=‘http://www.w3.org/1999/xlink'%3E%3Ctitle%3E%3C/title%3E%3Cg stroke=‘none’ stroke-width=‘1’ fill=‘none’ fill-rule=‘evenodd’ fill-opacity=‘0’%3E%3Cg transform=‘translate(-249.000000, -126.000000)’ fill=’%23FFFFFF’%3E%3Crect x=‘249’ y=‘126’ width=‘1’ height=‘1’%3E%3C/rect%3E%3C/g%3E%3C/g%3E%3C/svg%3E “null”)

添加 `Edit Fileds` 节点

新增一个字段,

  • • 设置名称为 rss

  • • 选择类型为 Array

  • • 值填写我们整理的 RSS 地址集合: [ "https://www.theverge.com/rss/index.xml", "https://www.wired.com/feed/rss", "https://techcrunch.com/feed/"]

效果如下:

新增字段

新增字段

点击上面的 Test step 按钮,测试当前流程,

测试当前流程

测试当前流程

执行成功可以看到右侧执行成功的标志,以及执行结果。

切分数据

关闭弹窗,再次搜索添加一个 Split out 节点:

搜索添加

搜索添加 `Split out` 节点

Split outSplit out 节点是指多个 RSS 站点拆分,每个站点分别执行后面逻辑。

字段填写上一步命名的 rss,点击测试查看节点执行结果如下:

填写上一步命名的

填写上一步命名的 `rss` 点击测试

读取新闻

搜索添加 RSS Read 节点,

  • • URL 字段类型选择 Expression

  • • 值填写表达式: {{ $json.rss }}

图片

`RSS Read` 节点

点击测试,等一会就可以看到新闻结果,等待的时间长短和你的网络以及前面配置的 RSS 站点数量有关:

RSS 结果

RSS 结果

可以看到右侧有几十条新闻数据。

设置新闻格式

再添加一个 Edit Fields 字段,只处理我们需要的字段:

  • • 标题 title -> {{ $json.title }}

  • • 内容 content -> {{ $json['content:encodedSnippet'] ?? $json.contentSnippet}}

  • • 时间 date -> {{ $json.isoDate}}

  • • 链接 link -> {{ $json.link }}

只处理我们需要的字段

只处理我们需要的字段

存储

下面我们添加一个节点来把读取到的文章存储到向量数据库里面。

先搜索 Simple Vector Store,点击然后选择 Add documents to vector store 添加节点:

  • • 修改节点名称为 存储文章

  • • Memory key 设置为 news_store_key

图片

接下来设置节点参数,点击 Embedding 搜索 Embeddings OpenAI 添加一个嵌入节点,我们使用阿里云的嵌入模型配置:

  • • Credential 选择上次我们创建的 Qwen

  • • Model 使用 Expression 填写 text-embedding-v3

  • • 选项 Option 填写 1024

  • • 选项 Batch size 填写 10(阿里云的嵌入批大小要小于10)

Embedding 配置

Embedding 配置

然后文档处选择 Default data loader

图片

进行如下配置:

  • • 加载指定数据:Mode 选择 Load Specific Data

  • • 使用 Markdown 格式数据:Data 填写:

    <span data-cacheurl="" data-remoteid="" data-lazy-bgimg="https://mmbiz.qpic.cn/mmbiz_svg/gQQO820rz5VCtmdAQaE0SGpZibIfuKhckg2YZfiaicc0Gf5Of25ZlZtfKI9gAgTcQzV6VGdxo50bicIhTV3yJm3vIhQ3qsUGHWUic/640?wx_fmt=svg&amp;from=appmsg" data-fail="0"></span><code><span leaf=""># {{ $json.title }}</span><span leaf=""><br></span><span leaf="">{{ $json.content }}</span></code>
    
  • • 添加元数据以便于我们检索

  • • title{{ $json.title }}

  • • createDate{{ $now.toISO() }}

  • • publishDate{{ $json.date }}

  • • link{{ $json.link }}

数据加载配置

数据加载配置

配置切分器

点击切分器配置选择 Recursive Character Text Splitter,一篇文章进行一次切片。

图片

配置切分参数:

  • • Chunk Size: 3000 设置 3000 个字符一个片段,当然也可以更大。

  • • Chunk Overlap: 0 设置每个片段都不重叠

测试流程

点击测试来测试当前流程,确保流程执行正确。

图片

使用定时任务

现在我们的流程需要手动执行,下面我们把手动触发改成每天定时触发。

搜索添加一个 Schedule Trigger

图片

设置每天晚上执行一次(时间也可以选择固定的时间,比如早上7点30分):

图片

替换掉原来的触发节点就可以了:

图片

设置发送流程

我们接下来配置一个发送流程来发送新闻摘要。

搜索添加一个 Schedule Trigger,来执行每天给我们发送日报。

我们也可以使用一个流程完成所有的任务,新建流程可以实现读取数据频率和发送通知不同的场景。 比如每个小时查询一次,每天发送一次。或者每天发送一次日报,每周发送一次周报。

设置主题

添加一个 Edit Fields 节点来设置我们关心的主题:

  • • InterestsAI, technology

  • • Number of news items to include: 15

设置 AI 和技术主题,新闻数量设置成15.

图片

添加 Agent

添加一个 AI Agent 节点,命名为新闻阅读 AI。提示词来源设置为 Define below , 配置用户提示词如下:

<span data-cacheurl="" data-remoteid="" data-lazy-bgimg="https://mmbiz.qpic.cn/mmbiz_svg/gQQO820rz5VCtmdAQaE0SGpZibIfuKhckg2YZfiaicc0Gf5Of25ZlZtfKI9gAgTcQzV6VGdxo50bicIhTV3yJm3vIhQ3qsUGHWUic/640?wx_fmt=svg&amp;from=appmsg" data-fail="0"></span><code><span leaf="">总结最近7天发布最相关的科技新闻。今天是 {{ $now }}</span></code>

配置系统提示词如下:

<span data-cacheurl="" data-remoteid="" data-lazy-bgimg="https://mmbiz.qpic.cn/mmbiz_svg/gQQO820rz5VCtmdAQaE0SGpZibIfuKhckg2YZfiaicc0Gf5Of25ZlZtfKI9gAgTcQzV6VGdxo50bicIhTV3yJm3vIhQ3qsUGHWUic/640?wx_fmt=svg&amp;from=appmsg" data-fail="0"></span><code><span leaf="">请用清晰、简洁且易于理解的英语撰写,仿佛是在策划每周的科技新闻通讯。</span><span leaf=""><br></span><span leaf=""><br></span><span leaf="">优先考虑与以下主题相关的故事:{{ $json.Interests }}。如果这些主题不存在,请选择本周最具影响力、广泛报道和值得注意的科技事件。</span><span leaf=""><br></span><span leaf=""><br></span><span leaf="">对于每个新闻项目:</span><span leaf=""><br></span><span leaf=""><br></span><span><span leaf="">-</span></span><span leaf="">&nbsp;提供简短的信息摘要(最多 1–3 句话)</span><span leaf=""><br></span><span><span leaf="">-</span></span><span leaf="">&nbsp;包括文章标题和直接链接到原始来源</span><span leaf=""><br></span><span><span leaf="">-</span></span><span leaf="">&nbsp;避免重复故事</span><span leaf=""><br></span><span><span leaf="">-</span></span><span leaf="">&nbsp;包含恰好 {{ $json['Number of news items to include'] }} 个独特的新闻项目</span><span leaf=""><br></span><span><span leaf="">-</span></span><span leaf="">&nbsp;保持友好而专业的语气,适合广泛的科技爱好者受众。</span></code>

配置效果可以参考下图:

提示词配置

提示词配置

然后配置 Agent 的 模型和工具(存储可以不配合)。

模型选择 千问:

图片

工具选择 Simple Vector Store,动作选择 Retrieve Documents (As Tool for AI Agent):

图片

配置如下:

  • • Memory Key 填写 news_store_key 和我们前面的 key 保证相同。

  • • Limit 设置为 20

  • • 勾选 Include Metadata 允许使用元数据。

图片

整体配置如下:

图片

我们测试一下流程,右侧是Markdown格式的文章摘要输出。

图片

英文网站默认也会是英文摘要,如果我们希望使用中文回答的话,可以简单的在系统提示词里面加上中文回答的指令。

图片

飞书通知

我们可以设置定时每天10点飞书给自己推送当天的新闻。

创意一个飞书机器人,选择头像、颜色,并填写名称和描述,

图片

点击下一步需要记录下 Webhook 地址,后面流程节点备用。

图片

在流程图里面添加一个 HTTP 请求节点:

图片

  • • Method 选择 Post

  • • Header 添加 Content-Type->application/json

  • • Body 设置 JSON -> {"msg_type":"text","content":{"text":"{{ $json.output }}"}}

https://open.feishu.cn/open-apis/bot/v2/hook/[4]

<span data-cacheurl="" data-remoteid="" data-lazy-bgimg="https://mmbiz.qpic.cn/mmbiz_svg/gQQO820rz5VCtmdAQaE0SGpZibIfuKhckg2YZfiaicc0Gf5Of25ZlZtfKI9gAgTcQzV6VGdxo50bicIhTV3yJm3vIhQ3qsUGHWUic/640?wx_fmt=svg&amp;from=appmsg" data-fail="0"></span><code><span leaf="">{</span><span><span leaf="">"msg_type"</span></span><span leaf="">:</span><span><span leaf="">"text"</span></span><span leaf="">,</span><span><span leaf="">"content"</span></span><span leaf="">:</span><span leaf="">{</span><span><span leaf="">"text"</span></span><span leaf="">:</span><span><span leaf="">"{{ $json.output.replaceAll('\n','\\n') }}"</span></span><span leaf="">}</span><span leaf="">}</span></code>

消息发送的效果如下:

图片

为了更美观的展示 Markdown 我们可以使用交互卡片来美化样式,

图片

Body 替换成如下内容即可:

<span data-cacheurl="" data-remoteid="" data-lazy-bgimg="https://mmbiz.qpic.cn/mmbiz_svg/gQQO820rz5VCtmdAQaE0SGpZibIfuKhckg2YZfiaicc0Gf5Of25ZlZtfKI9gAgTcQzV6VGdxo50bicIhTV3yJm3vIhQ3qsUGHWUic/640?wx_fmt=svg&amp;from=appmsg" data-fail="0"></span><code><span leaf="">{</span><span leaf=""><br></span><span leaf="">&nbsp;&nbsp;</span><span><span leaf="">"msg_type"</span></span><span leaf="">:</span><span><span leaf="">"interactive"</span></span><span leaf="">,</span><span leaf=""><br></span><span><span leaf="">"card"</span></span><span leaf="">:</span><span leaf="">{</span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp;&nbsp;</span><span><span leaf="">"schema"</span></span><span leaf="">:</span><span><span leaf="">"2.0"</span></span><span leaf="">,</span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp;&nbsp;</span><span><span leaf="">"config"</span></span><span leaf="">:</span><span leaf="">{</span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp; &nbsp;&nbsp;</span><span><span leaf="">"update_multi"</span></span><span leaf="">:</span><span><span><span leaf="">true</span></span></span><span leaf="">,</span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp; &nbsp;&nbsp;</span><span><span leaf="">"style"</span></span><span leaf="">:</span><span leaf="">{</span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp; &nbsp; &nbsp;&nbsp;</span><span><span leaf="">"text_size"</span></span><span leaf="">:</span><span leaf="">{</span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;</span><span><span leaf="">"normal_v2"</span></span><span leaf="">:</span><span leaf="">{</span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;</span><span><span leaf="">"default"</span></span><span leaf="">:</span><span><span leaf="">"normal"</span></span><span leaf="">,</span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;</span><span><span leaf="">"pc"</span></span><span leaf="">:</span><span><span leaf="">"normal"</span></span><span leaf="">,</span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;</span><span><span leaf="">"mobile"</span></span><span leaf="">:</span><span><span leaf="">"heading"</span></span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;</span><span leaf="">}</span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp; &nbsp; &nbsp;&nbsp;</span><span leaf="">}</span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp; &nbsp;&nbsp;</span><span leaf="">}</span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp;&nbsp;</span><span leaf="">}</span><span leaf="">,</span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp;&nbsp;</span><span><span leaf="">"body"</span></span><span leaf="">:</span><span leaf="">{</span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp; &nbsp;&nbsp;</span><span><span leaf="">"direction"</span></span><span leaf="">:</span><span><span leaf="">"vertical"</span></span><span leaf="">,</span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp; &nbsp;&nbsp;</span><span><span leaf="">"padding"</span></span><span leaf="">:</span><span><span leaf="">"12px 12px 12px 12px"</span></span><span leaf="">,</span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp; &nbsp;&nbsp;</span><span><span leaf="">"elements"</span></span><span leaf="">:</span><span leaf="">[</span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp; &nbsp; &nbsp;&nbsp;</span><span leaf="">{</span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;</span><span><span leaf="">"tag"</span></span><span leaf="">:</span><span><span leaf="">"markdown"</span></span><span leaf="">,</span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;</span><span><span leaf="">"content"</span></span><span leaf="">:</span><span><span leaf="">"{{ $json.output.replaceAll('\n','\\n') }}"</span></span><span leaf="">,</span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;</span><span><span leaf="">"text_align"</span></span><span leaf="">:</span><span><span leaf="">"left"</span></span><span leaf="">,</span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;</span><span><span leaf="">"text_size"</span></span><span leaf="">:</span><span><span leaf="">"normal_v2"</span></span><span leaf="">,</span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;</span><span><span leaf="">"margin"</span></span><span leaf="">:</span><span><span leaf="">"0px 0px 0px 0px"</span></span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp; &nbsp; &nbsp;&nbsp;</span><span leaf="">}</span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp; &nbsp;&nbsp;</span><span leaf="">]</span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp;&nbsp;</span><span leaf="">}</span><span leaf="">,</span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp;&nbsp;</span><span><span leaf="">"header"</span></span><span leaf="">:</span><span leaf="">{</span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp; &nbsp;&nbsp;</span><span><span leaf="">"title"</span></span><span leaf="">:</span><span leaf="">{</span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp; &nbsp; &nbsp;&nbsp;</span><span><span leaf="">"tag"</span></span><span leaf="">:</span><span><span leaf="">"plain_text"</span></span><span leaf="">,</span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp; &nbsp; &nbsp;&nbsp;</span><span><span leaf="">"content"</span></span><span leaf="">:</span><span><span leaf="">"AI News"</span></span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp; &nbsp;&nbsp;</span><span leaf="">}</span><span leaf="">,</span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp; &nbsp;&nbsp;</span><span><span leaf="">"subtitle"</span></span><span leaf="">:</span><span leaf="">{</span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp; &nbsp; &nbsp;&nbsp;</span><span><span leaf="">"tag"</span></span><span leaf="">:</span><span><span leaf="">"plain_text"</span></span><span leaf="">,</span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp; &nbsp; &nbsp;&nbsp;</span><span><span leaf="">"content"</span></span><span leaf="">:</span><span><span leaf="">""</span></span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp; &nbsp;&nbsp;</span><span leaf="">}</span><span leaf="">,</span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp; &nbsp;&nbsp;</span><span><span leaf="">"template"</span></span><span leaf="">:</span><span><span leaf="">"blue"</span></span><span leaf="">,</span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp; &nbsp;&nbsp;</span><span><span leaf="">"padding"</span></span><span leaf="">:</span><span><span leaf="">"12px 12px 12px 12px"</span></span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp;&nbsp;</span><span leaf="">}</span><span leaf=""><br></span><span leaf="">}</span><span leaf=""><br></span><span leaf="">}</span></code>

企业微信通知

企业微信的通知也类似,创建一个机器人,

请求的 URL 地址改成机器人的地址:

https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=[5]

内容使用如下内容:

<span data-cacheurl="" data-remoteid="" data-lazy-bgimg="https://mmbiz.qpic.cn/mmbiz_svg/gQQO820rz5VCtmdAQaE0SGpZibIfuKhckg2YZfiaicc0Gf5Of25ZlZtfKI9gAgTcQzV6VGdxo50bicIhTV3yJm3vIhQ3qsUGHWUic/640?wx_fmt=svg&amp;from=appmsg" data-fail="0"></span><code><span leaf="">{</span><span leaf=""><br></span><span leaf="">&nbsp;&nbsp;</span><span><span leaf="">"msgtype"</span></span><span leaf="">:</span><span leaf="">&nbsp;</span><span><span leaf="">"markdown"</span></span><span leaf="">,</span><span leaf=""><br></span><span leaf="">&nbsp;&nbsp;</span><span><span leaf="">"markdown"</span></span><span leaf="">:</span><span leaf="">&nbsp;</span><span leaf="">{</span><span leaf=""><br></span><span leaf="">&nbsp; &nbsp;&nbsp;</span><span><span leaf="">"content"</span></span><span leaf="">:</span><span leaf="">&nbsp;</span><span><span leaf="">"{{ $json.output.replaceAll('\n','\\n') }}"</span></span><span leaf=""><br></span><span leaf="">&nbsp;&nbsp;</span><span leaf="">}</span><span leaf=""><br></span><span leaf="">}</span></code>

推送效果如下:

![图片](data:image/svg+xml,%3C%3Fxml version=‘1.0’ encoding=‘UTF-8’%3F%3E%3Csvg width=‘1px’ height=‘1px’ viewBox=‘0 0 1 1’ version=‘1.1’ xmlns=‘http://www.w3.org/2000/svg' xmlns:xlink=‘http://www.w3.org/1999/xlink'%3E%3Ctitle%3E%3C/title%3E%3Cg stroke=‘none’ stroke-width=‘1’ fill=‘none’ fill-rule=‘evenodd’ fill-opacity=‘0’%3E%3Cg transform=‘translate(-249.000000, -126.000000)’ fill=’%23FFFFFF’%3E%3Crect x=‘249’ y=‘126’ width=‘1’ height=‘1’%3E%3C/rect%3E%3C/g%3E%3C/g%3E%3C/svg%3E “null”)

企业微信的消息推送有长度限制,过长的消息会推送失败,我们可以通过 substring 来截取,比如 {{ $json.output.replaceAll('\n','\\n').substring(500) }}

其他通知方式

除了企微、飞书 IM 通知,我们还有很多别的方式保存新闻和通知方式。

使用 Convert to file 保存为文件:

![图片](data:image/svg+xml,%3C%3Fxml version=‘1.0’ encoding=‘UTF-8’%3F%3E%3Csvg width=‘1px’ height=‘1px’ viewBox=‘0 0 1 1’ version=‘1.1’ xmlns=‘http://www.w3.org/2000/svg' xmlns:xlink=‘http://www.w3.org/1999/xlink'%3E%3Ctitle%3E%3C/title%3E%3Cg stroke=‘none’ stroke-width=‘1’ fill=‘none’ fill-rule=‘evenodd’ fill-opacity=‘0’%3E%3Cg transform=‘translate(-249.000000, -126.000000)’ fill=’%23FFFFFF’%3E%3Crect x=‘249’ y=‘126’ width=‘1’ height=‘1’%3E%3C/rect%3E%3C/g%3E%3C/g%3E%3C/svg%3E “null”)

使用各种邮件工具发送邮件给自己:

![图片](data:image/svg+xml,%3C%3Fxml version=‘1.0’ encoding=‘UTF-8’%3F%3E%3Csvg width=‘1px’ height=‘1px’ viewBox=‘0 0 1 1’ version=‘1.1’ xmlns=‘http://www.w3.org/2000/svg' xmlns:xlink=‘http://www.w3.org/1999/xlink'%3E%3Ctitle%3E%3C/title%3E%3Cg stroke=‘none’ stroke-width=‘1’ fill=‘none’ fill-rule=‘evenodd’ fill-opacity=‘0’%3E%3Cg transform=‘translate(-249.000000, -126.000000)’ fill=’%23FFFFFF’%3E%3Crect x=‘249’ y=‘126’ width=‘1’ height=‘1’%3E%3C/rect%3E%3C/g%3E%3C/g%3E%3C/svg%3E “null”)

保存到 Notion 上:

![图片](data:image/svg+xml,%3C%3Fxml version=‘1.0’ encoding=‘UTF-8’%3F%3E%3Csvg width=‘1px’ height=‘1px’ viewBox=‘0 0 1 1’ version=‘1.1’ xmlns=‘http://www.w3.org/2000/svg' xmlns:xlink=‘http://www.w3.org/1999/xlink'%3E%3Ctitle%3E%3C/title%3E%3Cg stroke=‘none’ stroke-width=‘1’ fill=‘none’ fill-rule=‘evenodd’ fill-opacity=‘0’%3E%3Cg transform=‘translate(-249.000000, -126.000000)’ fill=’%23FFFFFF’%3E%3Crect x=‘249’ y=‘126’ width=‘1’ height=‘1’%3E%3C/rect%3E%3C/g%3E%3C/g%3E%3C/svg%3E “null”)

保存到数据库:

![图片](data:image/svg+xml,%3C%3Fxml version=‘1.0’ encoding=‘UTF-8’%3F%3E%3Csvg width=‘1px’ height=‘1px’ viewBox=‘0 0 1 1’ version=‘1.1’ xmlns=‘http://www.w3.org/2000/svg' xmlns:xlink=‘http://www.w3.org/1999/xlink'%3E%3Ctitle%3E%3C/title%3E%3Cg stroke=‘none’ stroke-width=‘1’ fill=‘none’ fill-rule=‘evenodd’ fill-opacity=‘0’%3E%3Cg transform=‘translate(-249.000000, -126.000000)’ fill=’%23FFFFFF’%3E%3Crect x=‘249’ y=‘126’ width=‘1’ height=‘1’%3E%3C/rect%3E%3C/g%3E%3C/g%3E%3C/svg%3E “null”)

社区节点

如果内置节点里面没有你希望的,先不着急自己做,n8n 还有大量的社区插件可用。

比如:https://github.com/restyler/awesome-n8n[6] 项目上就列出了近百个流行的插件节点:

![图片](data:image/svg+xml,%3C%3Fxml version=‘1.0’ encoding=‘UTF-8’%3F%3E%3Csvg width=‘1px’ height=‘1px’ viewBox=‘0 0 1 1’ version=‘1.1’ xmlns=‘http://www.w3.org/2000/svg' xmlns:xlink=‘http://www.w3.org/1999/xlink'%3E%3Ctitle%3E%3C/title%3E%3Cg stroke=‘none’ stroke-width=‘1’ fill=‘none’ fill-rule=‘evenodd’ fill-opacity=‘0’%3E%3Cg transform=‘translate(-249.000000, -126.000000)’ fill=’%23FFFFFF’%3E%3Crect x=‘249’ y=‘126’ width=‘1’ height=‘1’%3E%3C/rect%3E%3C/g%3E%3C/g%3E%3C/svg%3E “null”)

引用链接

[1] RSS Source: https://rss-source.com/programming
[2] Github top-rss-list: https://github.com/weekend-project-space/top-rss-list
[3] 知乎网友推荐: https://www.zhihu.com/question/19580096
[4]https://open.feishu.cn/open-apis/bot/v2/hook/
[5]https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=
[6]https://github.com/restyler/awesome-n8n