Skip to content
Back to skills

Rss News Aggregator

ASecurity

RSS 资讯聚合工具。从全球 92 个高质量技术博客采集 AI/科技资讯,支持关键词搜索、主题分类、时间范围过滤、来源筛选,输出 Markdown 和 HTML 双格式报告。

  • 80 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added May 26, 2026
datapythonbashreactdatabasedevopssecurity

Works with

  • cli
  • mcp

Security analysis

A96/100
  • mediumInstalls packages at runtime which could introduce malicious dependencies

Pro scans all 9 files and shows the line behind each finding

Scanned May 27, 2026

npx -y skills add laborany/laborany --skill rss-news-aggregator --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Rss News Aggregator?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Rss News Aggregator
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/laborany-rss-news-aggregator/badge)](https://www.skillsdirectory.com/skills/laborany-rss-news-aggregator)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: 优质资讯
description: RSS 资讯聚合工具。从全球 92 个高质量技术博客采集 AI/科技资讯,支持关键词搜索、主题分类、时间范围过滤、来源筛选,输出 Markdown 和 HTML 双格式报告。
icon: 📡
---

# 优质资讯 - RSS 资讯聚合工具

从全球 92 个高质量技术博客采集最新的 AI/科技资讯,支持多维度过滤和智能质量评估。

## ✨ 功能特性

- **多源聚合**:从 92 个精选 RSS 源(HN Popularity Contest 2025)采集资讯
- **智能过滤**:支持关键词搜索、自然语言查询、主题分类、时间范围、精准来源筛选
- **质量评估**:基于来源权威性、内容质量、时效性自动评分排序(0-100 分)
- **双格式输出**:Markdown(便于编辑)+ HTML(Linear 简约风格 + 卡片布局)
- **实时更新**:直接从 RSS feeds 获取,分钟级时效性

## 🚀 快速开始

### 方式 1:获取最近 3 天的所有资讯

```bash
python scripts/fetch_rss.py --days 3 --output /tmp/raw.json
python scripts/filter_content.py --input /tmp/raw.json --output /tmp/filtered.json
python scripts/generate_report.py --input /tmp/filtered.json --output-dir docs/news
```

### 方式 2:搜索特定主题

```bash
# 搜索 "Claude" 相关资讯
python scripts/fetch_rss.py --days 7 --output /tmp/raw.json
python scripts/filter_content.py --input /tmp/raw.json --query "Claude" --output /tmp/filtered.json
python scripts/generate_report.py --input /tmp/filtered.json --output-dir docs/news
```

### 方式 3:精准过滤特定来源

```bash
# 只获取 Simon Willison 和 Gary Marcus 的文章
python scripts/fetch_rss.py --days 3 --sources "simonwillison.net,garymarcus.substack.com" --output /tmp/raw.json
python scripts/filter_content.py --input /tmp/raw.json --output /tmp/filtered.json
python scripts/generate_report.py --input /tmp/filtered.json --output-dir docs/news
```

## 📋 使用流程

### 步骤 1:获取 RSS 数据

```bash
python scripts/fetch_rss.py [选项]
```

**选项**:
- `--days N`:获取最近 N 天的资讯(默认 3 天)
- `--sources "source1,source2"`:只获取指定来源(可选)
- `--output FILE`:输出 JSON 文件路径

### 步骤 2:过滤和评分

```bash
python scripts/filter_content.py [选项]
```

**选项**:
- `--input FILE`:输入 JSON 文件(来自步骤 1)
- `--query "关键词"`:搜索查询(可选)
- `--sources "source1,source2"`:过滤特定来源(可选)
- `--min-quality N`:最低质量分数 0-100(可选)
- `--output FILE`:输出 JSON 文件路径

### 步骤 3:生成报告

```bash
python scripts/generate_report.py [选项]
```

**选项**:
- `--input FILE`:输入 JSON 文件(来自步骤 2)
- `--output-dir DIR`:输出目录(默认 `docs/news`)
- `--format md|html|both`:输出格式(默认 both)

### 步骤 4:查看报告

- **Markdown**:`docs/news/rss-news-YYYY-MM-DD.md`
- **HTML**:在浏览器中打开 `docs/news/rss-news-YYYY-MM-DD.html`

## 📊 数据源分类

### 来源统计
- **总计**:92 个高质量技术博客
- **来源**:HN Popularity Contest 2025

### 主要领域
- **AI/ML**:Simon Willison, Gary Marcus, Gwern 等
- **软件开发**:Dan Abramov (Overreacted), Mitchell Hashimoto 等
- **安全**:Troy Hunt, Krebs on Security, lcamtuf 等
- **系统架构**:Jeff Geerling, antirez 等
- **科技评论**:Daring Fireball, Pluralistic 等

### 知名博主
- Simon Willison (simonwillison.net) - AI/数据库专家
- Paul Graham (paulgraham.com) - YC 创始人
- Gary Marcus (garymarcus.substack.com) - AI 研究者
- Mitchell Hashimoto (mitchellh.com) - HashiCorp 创始人
- Dan Abramov (overreacted.io) - React 核心开发者

## 🎯 质量评估机制

### 评分算法(0-100 分)

**来源权威性(40%)**:
- 官方博客:1.5x 权重
- 学术/研究:1.3x 权重
- 科技媒体:1.2x 权重
- 个人博客:1.0x 权重

**内容质量(30%)**:
- 高质量关键词:research, analysis, deep dive, tutorial, guide 等(+2 分/个)
- 低质量关键词:clickbait, shocking, viral 等(-5 分/个)

**时效性(20%)**:
- 24 小时内:+10 分
- 72 小时内:+5 分

**相关性(10%)**:
- 关键词匹配度(查询时)

**综合排序**:
```
final_score = quality_score * 0.6 + relevance_score * 100 * 0.4
```

### 主题分类

自动将资讯分类到以下主题:
- 🤖 AI/ML
- 💻 Software Development
- 🔒 Security
- 🏗️ System Architecture
- 🌐 Web Development
- ⚙️ DevOps
- 🗄️ Database
- 🚀 Startup/Business
- 📄 Other

## 🆚 与 topic-collector 的差异

| 特性 | topic-collector | rss-news-aggregator |
|-----|----------------|---------------------|
| **数据源** | mcp__laborany_web__search 搜索引擎 | RSS feeds 直接订阅 |
| **时效性** | 依赖搜索引擎索引 | 实时 RSS 更新(分钟级) |
| **覆盖面** | 广泛但不稳定 | 精选高质量源(92 个) |
| **过滤能力** | 手动整理 | 自动化多维过滤 |
| **质量控制** | 人工筛选 | 算法自动评分 |
| **适用场景** | 每日热点采集 | 专题资讯聚合 |
| **用户输入** | 固定主题 | 灵活查询(关键词/自然语言) |

**定位**:
- `topic-collector`:每日 AI 热点快照(广度优先)
- `rss-news-aggregator`:专题资讯深度聚合(深度优先)

## 🛠️ 技术挑战与解决方案

### 挑战 1:RSS 源失效或格式不一致
**解决方案**:
- 使用 `feedparser` 库统一解析 RSS/Atom/JSON Feed
- 实现容错机制:单个源失败不影响整体
- 并发获取(ThreadPoolExecutor,max_workers=10)

### 挑战 2:内容去重
**解决方案**:
- 基于 URL 去重(优先)
- 基于标题相似度去重(可选)

### 挑战 3:HTML 样式独立性
**解决方案**:
- 所有样式内联到 HTML 文件(无外部 CSS)
- 使用 CSS 变量实现暗色模式
- 响应式设计(移动端友好)

## 📦 依赖说明

```bash
pip install feedparser python-dateutil
```

**依赖列表**:
- `feedparser`:RSS/Atom feed 解析
- `python-dateutil`:日期时间处理

## 📁 输出文件

| 文件类型 | 保存位置 | 命名规则 |
|---------|----------|---------|
| Markdown | `docs/news/` | `rss-news-{YYYY-MM-DD}.md` |
| HTML | `docs/news/` | `rss-news-{YYYY-MM-DD}.html` |

## 🔮 未来扩展

- [ ] 订阅管理:用户自定义 RSS 源(Web UI)
- [ ] 智能摘要:使用 LLM 生成更精炼的摘要
- [ ] 趋势分析:识别热门话题和趋势(词云、时间线)
- [ ] 邮件推送:定时发送资讯摘要到邮箱
- [ ] 多语言翻译:自动翻译外文资讯
- [ ] 收藏功能:用户标记感兴趣的资讯

## 📝 示例输出

### Markdown 格式

```markdown
# 优质资讯 - 2026-03-11

## 📊 概览
- 总计:45 条资讯
- 来源:28 个
- 生成时间:2026-03-11 10:30:00

## 🤖 AI/ML
### [Claude 4.6 Released with Enhanced Reasoning](https://example.com)
**来源**: simonwillison.net | **时间**: 2 小时前 | **质量**: 95/100

Anthropic announces Claude 4.6 with significant improvements...
```

### HTML 格式

Linear 简约风格,包含:
- 响应式卡片布局
- 暗色模式支持
- 悬停动画效果
- 质量徽章(颜色编码)
- 移动端友好

## 📞 支持

如有问题或建议,请在 laborany 项目中提交 issue。

Files in this skill

  • IMPLEMENTATION.md6 KB
  • README.md3.1 KB
  • SKILL.md7.2 KB
  • assets/rss-sources.json12.9 KB
  • references/design-guide.md5.4 KB
  • scripts/fetch_rss.py5.1 KB
  • scripts/filter_content.py6.9 KB
  • scripts/generate_report.py12.4 KB
  • scripts/test.sh2.2 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.