News-Agent:开源自动化新闻聚合与 RSS 生成器
News-Agent 是一款基于 GitHub Actions 构建的自动化新闻聚合工具。它能够高效拉取多源 RSS 内容,通过智能去重算法剔除重复信息,最终将标准化、分类化的订阅源托管在 GitHub Pages 上,实现零成本的资讯分发与订阅。
核心功能与特性
- 全自动聚合 :支持从多个指定 RSS 源同步新闻条目。
- 智能去重 :利用哈希值校验,确保同一篇文章不会在订阅源中重复出现。
- 标准化输出 :自动生成符合 W3C 标准的 RSS Feed 文件,兼容 Feedly、FeedReader、Folo 等主流阅读器。
- 零成本托管 :利用 GitHub Actions 定时触发更新,并通过 GitHub Pages 提供公共访问。
- 灵活的更新频率 :支持自定义计划(例如:北京时间 8:00-24:00 每 4 小时更新一次,或每日 UTC 00:00 运行)。
快速订阅指南
你可以直接订阅以下经过聚合的标准化源:
| 分类 | RSS 订阅地址 | 状态 |
|---|---|---|
| 🤖 AI · 人工智能 | 点击跳转 | ✅ |
| 💻 科技 Technology | 点击跳转 | ✅ |
| 💰 财经 Finance | 点击跳转 | ✅ |
开发者部署指南
1. 本地快速启动
安装运行环境依赖:
pip install -r requirements.txt
执行更新指令:
# 方案 A:分步执行
python 生成累积新闻.py
python 生成累积 RSS.py
# 方案 B:一键更新
python daily_update.py
2. 自定义订阅源
通过编辑 RSS feed URL/rss_feed_url.json 配置文件来增加或修改源:
[
{
"name": "订阅源名称",
"category": "分类名",
"language": "zh/en",
"rss": "https://example.com/rss"
}
]
3. GitHub Actions 自动化部署
- Fork 仓库 :将项目克隆至个人账户。
- 配置 Pages:在
Settings → Pages中将 Source 设置为GitHub Actions。 - 自动运行 :推送配置后,工作流将按照预设时间(如每日 UTC 00:00)自动执行:聚合新闻 $rightarrow$ 生成 RSS $rightarrow$ 部署至 Pages。
项目结构参考
News-Agent/
├── src/ # 核心逻辑(RSS 读取、URL 加载)├── RSS feed URL/ # 订阅源配置文件 (rss_feed_url.json)
├── feed/ # 最终生成的 .xml 订阅文件
├── cumulative_news/ # 存储累积新闻 (.md) 与汇总报告
├── 生成累积新闻.py # 处理新闻累积逻辑
├── 生成累积 RSS.py # 转换累积内容为 RSS 格式
├── daily_update.py # 自动化更新主脚本
└── requirements.txt # 依赖清单
适用场景与注意事项
- 适用人群 :需要稳定、低成本资讯聚合方案的开发者,以及关注 AI、科技、财经领域的创作者。
- 数据输出 :除了
.xml订阅源,系统还会生成.md格式的累积新闻文档,方便进行离线存档或二次分析。 - 合规性 :全站 HTTPS 加密,无广告干扰,代码开源透明,支持审计与二次开发。
资源链接
项目站点: https://www.zskksz.asia/News-Agent/
GitHub 仓库: https://github.com/zskfree/News-Agent
正文完
