Files
nexus/wiki/sources/blogwatcher-daily收藏.md
2026-04-28 20:03:11 +08:00

74 lines
3.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
title: "Blogwatcher Daily 技能收藏"
type: source
tags: [rss, automation, hermes-agent, skill]
date: 2026-04-18
---
## Source File
- [[raw/Skills/blogwatcher-daily收藏.md]]
## Summary用中文描述
- 核心主题Hermes Agent 自定义技能 blogwatcher-daily实现 RSS/YouTube 订阅自动化监控与每日摘要生成
- 问题域:个人资讯获取与信息聚合
- 方法/机制RSSHub 转换 YouTube 频道为 RSS + feedparser 解析 + SQLite 去重 + Cron 定时调度
- 结论/价值:每天自动整理 31 个订阅频道的新文章,减少信息过载,提高阅读效率
## Key Claims用中文描述
- Hermes Agent 通过 blogwatcher-daily 技能实现 31 个 RSS/YouTube 频道的自动化监控
- RSSHub 将 YouTube Channel ID 转换为 RSS Feed解决 YouTube 订阅源获取问题
- feedparser 库支持 RSS 1.0/2.0/Atom 格式,自动处理 GB2312/GBK/ISO-8859-1 编码和畸形 XML
- SQLite 数据库按 URL 排重,已读链接不重复写入,避免信息冗余
- Cron 定时任务(每天早上 6:00自动调用 skill 脚本,结果推送 Telegram 通知
## Key Quotes
> "RSS 解析库feedparser支持 RSS 1.0/2.0/Atom、GB2312/GBK 编码、畸形 XML" — 技术选型说明
> "追加写入:日常扫描正确追加到日报,不覆盖历史内容" — 数据持久化策略
> "wikiHow 禁止所有爬虫,无法抓取,永远返回 0 篇" — 已知的限制
## Key Concepts
- [[RSSHub]]:开源 RSS 生成器,将无 RSS 的网站/YouTube 频道转为 RSS Feed部署在 `http://192.168.3.45:1200`
- [[feedparser]]Python RSS/Atom 解析库,支持多种编码和畸形 XML是本技能的核心解析引擎
- [[SQLite 去重机制]]:通过 SQLite 数据库按 URL 排重,已读链接不重复写入每日日报
- [[Hermes Agent]]AI Agent 平台blogwatcher-daily 是其自定义技能之一,通过 cron 定时调度执行
- [[Cron 定时任务]]:每天 `0 6 * * *` 执行Job ID `ecdd35bb7df3`,通过 `deliver=origin` 推送 Telegram 通知
## Key Entities
- [[Hermes Agent]]:技能运行平台,提供 cron 调度和 Telegram 通知能力
- RSSHub`http://192.168.3.45:1200`):本地部署的 RSSHub 实例,用于转换 YouTube 频道为 RSS
- blogwatcher-daily 脚本:主脚本位于 `~/.hermes/skills/custom/blogwatcher-daily/scripts/blogwatcher-daily.py`
## Connections
- [[Hermes Agent]] ← runs ← [[blogwatcher-daily]]
- [[blogwatcher-daily]] ← uses ← [[RSSHub]]
- [[blogwatcher-daily]] ← uses ← [[feedparser]]
- [[blogwatcher-daily]] ← stores state in ← [[SQLite 去重机制]]
- [[blogwatcher-daily]] ← scheduled by ← [[Cron 定时任务]]
## Contradictions
- 暂无发现与其他 Wiki 页面的冲突
## 技术细节
| 维度 | 技术选型 |
|------|----------|
| RSS 解析 | feedparser支持 RSS 1.0/2.0/Atom |
| YouTube 支持 | RSSHub`http://192.168.3.45:1200` |
| 去重存储 | SQLite`blogwatcher.db` |
| 编码处理 | 自动检测 GB2312、GBK、ISO-8859-1 |
| 定时调度 | Cron `0 6 * * *` |
| 通知方式 | Telegram`deliver=origin` |
## 已解决的问题
- ✅ RSS 1.0 支持Slashdot 使用 RSS 1.0feedparser 解决
- ✅ GB2312 乱码feedparser 自动处理
- ✅ 畸形 XMLfeedparser 兜底
- ✅ YouTube RSSHub绕过 YouTube 直接访问限制
- ✅ 追加写入:日报模式不覆盖历史
- ✅ 独立 force-all强制回扫写入独立文件
## 已知限制
- wikiHow 禁止爬虫,永远返回 0 篇
- FeedBurner 频道電腦玩物、阿榮福利味RSSHub 可能不稳定
- `--all` 强制回扫不要加入 cron仅作例外操作