n8n 自动化:获取最新 GitHub 热榜数据
n8n 简介
n8n 是一款强大且灵活的开源自动化工具,支持无代码/低代码方式搭建各类自动化流程。用户可通过可视化界面,将各种 API、数据库、应用服务(如 GitHub、Slack、邮件、数据库等)灵活串联,实现数据采集、处理、推送等自动化任务。n8n 拥有丰富的内置节点,支持自定义代码扩展,并可本地部署或云端运行,非常适合开发者和企业构建个性化的数据自动化解决方案。
一、功能概述
Github Day Trend 是一套使用 n8n 搭建的自动化工作流,能够每日自动抓取 GitHub Trending 页的热门开源项目,提取核心信息(如项目名称、作者、描述、语言、Star 数等),并借助 AI 自动生成简明项目摘要,最终输出结构化的热门项目数据。
二、适用场景
-
技术团队:每日获取开源新项目灵感,跟踪技术趋势
-
媒体/内容运营:自动生成“今日 GitHub 热门项目”专栏内容
-
个人开发者:快速筛选值得关注的新项目
三、核心流程步骤
-
手动触发:支持一键启动,便于测试和调试
-
抓取数据:自动请求 GitHub Trending 页面,获取热门仓库 HTML
-
解析内容:提取每个项目的详细数据(名称、作者、描述、语言等)
-
补充信息:通过 GitHub API 获取 Star 数和 README
-
智能摘要:利用 OpenAI GPT-4 自动生成一句话项目简介
-
结构化输出:整合所有信息,输出为标准化数据,便于后续展示或集成
四、涉及系统/服务
-
GitHub(网页抓取 & API 调用)
-
OpenAI GPT-4(AI 语义摘要)
-
n8n 内置节点(HTML 解析、HTTP 请求、代码处理等)
五、流程实现

节点详解
| 步骤 | 节点名称 | 主要作用 |
|---|---|---|
| 1 | 手动触发 | 手动启动流程,便于测试与调试 |
| 2 | 请求 GitHub Trending | GET 请求 https://github.com/trending,抓取热门仓库页面 |
| 3 | 提取主内容区域 | 用 CSS 选择器 div.Box 提取 trending 仓库列表 HTML |
| 4 | 提取所有仓库 HTML | 用 article.Box-row 拆分每个仓库 HTML,组成数组 |
| 5 | 拆分为单条处理 | 将每个仓库 HTML 拆为单独 item,便于逐条处理 |
| 6 | 解析仓库信息 | 提取仓库名、作者、描述、语言等关键信息 |
| 7 | 获取 Star 数 | 调用 GitHub API 获取 star 数等详细数据(需 Bearer Token,推荐配置) |
| 8 | 获取 README | 调用 GitHub API 获取 README(base64 编码) |
| 9 | 解码 README | 用 JavaScript 解码 README,得到纯文本 |
| 10 | AI 总结简介 | 用 OpenAI GPT-4.1,生成一句话项目介绍(需配置 API Key) |
| 11 | 整合输出结构 | 汇总所有关键信息,输出结构化数据 |
| 12 | 输出/后续处理 | 可扩展保存数据库、推送消息、邮件通知等操作 |
六、拓展建议
-
自动定时触发:可通过 n8n 定时节点设为每日自动运行
-
多语言支持:可根据项目语言字段,筛选特定语言项目
-
多渠道推送:结合企业微信、邮件、实现自动推送
七、总结
Github Day Trend 工作流,极大简化了 GitHub 热门项目的每日采集、整理与分发流程,为技术团队、内容运营与开发者提供了高效的自动化工具。通过 n8n 的可视化与可扩展性,用户可根据需求灵活集成更多后续操作。
参考链接:
工作流模版地址:https://github.com/tmstack/n8n-workflow-templates
精选工作流推荐:https://n8ntemplates.dev/zh
n8n官网:https://n8n.io

浙公网安备 33010602011771号