ChatGPT创意写作AI 评分 · 待评分AI 辅助编辑·未发现明显提示词注入风险n8n.io

无 RSS 新闻站自动抓取与 AI 摘要

定时触发 → 抓取列表页提取链接与日期 → 筛选近期文章 → 逐篇获取正文 → GPT-4 生成摘要与关键词 → 存入 NocoDB

有一点经验步骤流程提示词贴士
给谁
需要监控无 RSS 新闻站、定期汇总技术动态的内容运营者或市场研究人员
你会得到
每周自动抓取最新新闻,生成 70 词内摘要和 3 个技术关键词,结构化存入数据库
你需要
n8n

硬约束

前置条件:n8n 实例;OpenAI API 账户(非普通 ChatGPT 账户);NocoDB 数据库及 API Token。需具备基础 CSS 选择器知识以适配目标网站。注意:源码中日期筛选为可配置值(示例含 -70 天),需与定时触发周期同步;CSS 选择器因站而异必须自行调整。

他们做了什么

作者 askans 为监控 Colt 公司无 RSS 的新闻页面,创建了此 n8n 模板。工作流每周定时触发,先抓取列表页提取所有文章链接和日期,筛选近期文章后逐篇获取详情页,调用 GPT-4-1106-preview 并行生成 70 词摘要和 3 个技术关键词,最终结构化存入 NocoDB 数据库。

效果如何

模板在 n8n.io 发布,展示完整节点连接与参数配置。作者报告核心流程可运行,同时提醒需根据目标网站调整 CSS 选择器,且并非所有网站都允许高频抓取(author_report)。

值得知道

1) 源码中日期筛选默认使用 -70 天(注释说明可改),但描述写 last 7 days,实际使用时必须与 cron 周期同步修改;2) CSS 选择器完全依赖目标网站 DOM 结构,换站必须重新获取;3) NocoDB 的 projectId、table ID 为示例值,必须替换为自己的数据库;4) 需要 OpenAI API 账户(非 ChatGPT Plus 订阅);5) 无内置错误处理或请求频率限制,生产环境建议添加;6) 输出目标可替换为邮件、Excel 等,不仅限于 NocoDB。

n8n 工作流模板

结构已检查 · 未实际运行

下载后在 n8n 选择“Import from File”,或复制 JSON 后粘贴到编辑器。先配置自己的账号,再用测试数据运行;模板默认未启用。

配置与测试清单

需要绑定的凭证

  • Summary 节点:绑定OpenAI API 凭证。
  • Keywords 节点:绑定OpenAI API 凭证。
  • NocoDB news database 节点:绑定nocoDbApiToken 凭证。

需要替换的配置

  • 源模板来自 n8n 公开库 #2180(约 36 个节点)。导入后先保持未启用,核对触发器、表达式与外部 API 端点。
  • Sticky Note 中的说明仅供参考;按自己的账号、表结构或频道 ID 替换占位配置。

测试输入与预期结果

  • 在测试环境手动执行一次主路径,确认每个需凭证的节点已连接且无鉴权错误。
  • 用一条合成/脱敏样例数据跑通,核对输出字段与下游写入目标,再考虑生产启用。

模板处理说明

  • 已移除原作者凭证绑定、webhookId 与执行数据,工作流设为未启用;节点、连线与原文提示词保持原样。未在 n8n 中实际运行。
  • 未改业务逻辑;运行前请自行核对密钥、配额与隐私合规。

模板获取日期: 2026-10-25

步骤

  1. 配置定时触发与目标网站

    在 n8n 中添加 Schedule Trigger 节点,设置为每周运行(如周三 04:32)。添加 HTTP Request 节点,输入目标新闻列表页 URL(示例为 https://www.colt.net/resources/type/news/),响应格式设为 text。

  2. 提取文章链接与发布日期

    使用 HTML 节点从列表页 HTML 中提取:1) 文章链接(通过 CSS 选择器定位 a 标签的 href 属性,returnArray=true);2) 发布日期(通过独立 CSS 选择器提取日期文本,returnArray=true)。随后各用 Item Lists 节点将数组拆分为独立 JSON 项(字段名分别设为 Link 和 Date)。

  3. 合并并筛选近期文章

    用 Merge 节点将链接项与日期项按位置合并。添加 Code 节点执行 JavaScript 过滤:计算当前日期与回溯天数(如 7 天,需与 cron 周期同步),保留 Date 字段在范围内的文章。

    运行提示词 · 来源原文。Code 节点 jsCode 字段

    const currentDate = new Date();
    const sevenDaysAgo = new Date(currentDate.setDate(currentDate.getDate() - 70)); // Change the number of days going back to your liking (e.g. from -7 to -1) -> BUT sync with the cron job (first node)
    
    const filteredItems = items.filter(item => {
        const postDate = new Date(item.json["Date"]); // Assuming "Date" is the field name in the extracted html
        return postDate >= sevenDaysAgo;
    });
    
    return filteredItems;
  4. 逐篇抓取并提取正文

    对筛选后的每篇文章,HTTP Request 节点以 {{ $json["Link"] }} 为 URL 获取详情页 HTML。用 HTML 节点提取标题(如 h1.fl-heading > span:nth-child(1))和正文内容(如 .fl-node-5c7574ae7d5c6 > div:nth-child(1)),通过 Merge 节点将标题、正文与日期、链接合并。

  5. GPT-4 生成摘要与关键词

    并行调用两个 OpenAI 节点(模型 gpt-4-1106-preview):Summary 节点输入正文生成 70 词内摘要;Keywords 节点提取 3 个最重要技术关键词(仅输出关键词,无解释)。分别用 Set 节点将输出重命名为 summary 和 keywords,再用 Merge 节点合并两者。

    运行提示词 · 来源原文。OpenAI Summary 节点 prompt.messages[0].content

    =Create a summary in less than 70 words {{ $json["content"] }}

    运行提示词 · 来源原文。OpenAI Keywords 节点 prompt.messages[0].content

    =name the 3 most important technical keywords in {{ $json["content"] }} ? just name them without any explanations or other sentences
  6. 合并数据并写入 NocoDB

    用 Merge 节点将文章元数据(标题、日期、链接)与 GPT-4 输出(摘要、关键词)合并。添加 NocoDB 节点,配置 projectId、table、authentication(nocoDbApiToken),字段映射:News_Source=Colt, Title={{ $json["title"] }}, Date={{ $json["Date"] }}, Link={{ $json["Link"] }}, Summary={{ $json["summary"] }}, Keywords={{ $json["keywords"] }},操作为 create。

可复制提示词

搭建指导 · 本站建议版本。交给搭建助手,先确认输入和权限

这一段是提示词,页面不会在这里插入广告。

请根据以下信息搭建 n8n 工作流:1) 从目标新闻列表页定时抓取 HTML;2) 用 CSS 选择器提取文章链接和日期;3) 筛选近期文章;4) 逐篇获取正文;5) 调用 GPT-4 生成摘要和关键词;6) 结果写入 NocoDB。需自备 OpenAI API 账户和 NocoDB 凭证,CSS 选择器必须根据实际网站调整。

关键配置:定时周期与日期筛选天数需同步;CSS 选择器用浏览器开发者工具获取;NocoDB 表结构需预先创建。

来源

Scrape and summarize posts of a news site without RSS feed using AI and save them to a NocoDB · askans · n8n.io · 2024-03-17

留言与反馈

试过这个方法吗?分享效果、遇到的问题或改进建议。留言审核后公开,请勿填写敏感信息。

正在加载…

    相关用例