关于 rss-automation
rss-automation 是用于自动跟踪内容的 RSS/Atom 订阅源监控技能,适合需要汇总更新并发送通知的场景。它支持筛选条目、去重和定时检查。
主要功能
- 01解析 RSS 2.0 和 Atom 订阅源
- 02按关键词、日期和作者筛选
- 03记录已读条目并识别新内容
- 04将新条目推送到通知渠道
- 05通过 cron 定时检查订阅源
适用场景
- 01跟踪多个新闻或技术订阅源
- 02仅接收符合关键词或日期条件的条目
- 03定期将新内容发送到 Telegram 或 Slack
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ aaaaqwq/ agi-super-team --skill rss-automation安装后在 Claude Code 中输入/rss-automation确认已加载。
详细介绍
RSS 自动化
- 作者:Daniel Li
- 版权所有 © Daniel Li。保留所有权利。
监控并聚合 RSS/Atom 订阅源,以自动跟踪内容并发送通知。
功能
- 解析 RSS 2.0 和 Atom 订阅源
- 按关键词、日期和作者筛选条目
- 跟踪已查看和新条目,以避免重复
- 将新条目推送到 Telegram、Slack 或其他渠道
- 通过 cron 安排定期检查订阅源
用法
解析订阅源
import feedparser
feed = feedparser.parse("https://example.com/feed.xml")
for entry in feed.entries[:10]:
print(f"{entry.title} - {entry.link}")
print(f" Published: {entry.get('published', 'N/A')}")
监控多个订阅源
import feedparser, json, hashlib
from pathlib import Path
SEEN_FILE = Path("~/.openclaw/rss-seen.json").expanduser()
def load_seen():
if SEEN_FILE.exists():
return json.loads(SEEN_FILE.read_text())
return {}
def save_seen(seen):
SEEN_FILE.write_text(json.dumps(seen))
def check_feed(url, seen):
feed = feedparser.parse(url)
new_entries = []
for entry in feed.entries:
entry_id = hashlib.md5(entry.link.encode()).hexdigest()
if entry_id not in seen.get(url, []):
new_entries.append(entry)
seen.setdefault(url, []).append(entry_id)
return new_entries
Cron 集成
设置 cron 作业以定期检查订阅源:
Schedule: every 2 hours
Payload: "Check RSS feeds and push new items"
依赖项
pip install feedparser
订阅源示例
| 来源 | 订阅源 URL |
|---|---|
| Hacker News | https://hnrss.org/frontpage |
| TechCrunch | https://techcrunch.com/feed/ |
| ArXiv CS.AI | http://arxiv.org/rss/cs.AI |
| GitHub Trending | 改用网页抓取 |
重要说明
- 某些订阅源需要 User-Agent 请求头
- 限制检查订阅源的频率(不要每隔不到 15 分钟轮询一次)
- 持久化存储已查看条目,以便重启后保留
评论
支持 Markdown