RSS Monitor - RSS监控
激活词: RSS监控 / 订阅更新 / Feed监控
安装
pip install feedparser
功能
- 解析RSS/Atom feeds
- 检测新内容
- 过滤分类
- 历史记录
Python函数
import feedparser
import time
from datetime import datetime
class RSSMonitor:
def __init__(self):
self.feeds = {}
self.last_check = {}
def add_feed(self, name: str, url: str):
self.feeds[name] = url
def check_updates(self) -> list:
updates = []
for name, url in self.feeds.items():
feed = feedparser.parse(url)
for entry in feed.entries[:5]:
entry_time = datetime(*entry.published_parsed[:6])
if name not in self.last_check or entry_time > self.last_check[name]:
updates.append({
'feed': name,
'title': entry.title,
'link': entry.link,
'published': entry.get('published', 'Unknown'),
})
self.last_check[name] = datetime.now()
return updates
def get_entries(self, url: str, limit: int = 10):
feed = feedparser.parse(url)
return [{
'title': e.title,
'link': e.link,
'summary': e.get('summary', '')[:200],
} for e in feed.entries[:limit]]
命令行
# 解析RSS
curl -s "https://example.com/feed.xml" | grep -o '<title>.*</title>'
使用场景
- 监控技术博客更新
- 跟踪新闻源
- 关注播客��集
- 监控社交媒体动态