核心功能
Douban Sync 是一套完整的豆瓣个人数据导出与同步方案,覆盖书籍、影视、音乐、游戏四大类别。该技能采用双模式设计:首次运行通过浏览器工具完整抓取用户全部收藏历史,后续则通过 RSS 订阅实现零登录增量同步,兼顾数据完整性与长期维护的便利性。
显著优点
1. 全类别覆盖:支持豆瓣四大核心内容类型的收藏状态(读过/在读/想读等12种状态),满足用户构建个人知识库的综合需求。
2. 零 API 依赖:完全基于网页抓取与公开 RSS 源,无需申请豆瓣 API 密钥,规避了第三方平台接口受限或关闭的风险。
3. 增量同步机制:RSS 模式每日自动拉取更新,无需重复登录,大幅降低账号异常风险与操作成本。
4. Obsidian 兼容输出:原生 CSV 格式便于导入笔记软件进行二次加工,适合构建个人阅读/观影数据库。
5. 智能去重机制:基于豆瓣 URL 唯一标识,重复运行不会导致数据冗余。
潜在局限
- 抓取依赖网页结构:若豆瓣改版可能导致选择器失效,需维护更新。
- 反爬限制:全量导出需遵守 2-3 秒/页的延迟策略,大规模收藏用户首次同步耗时较长。
- RSS 延迟性:增量同步依赖 RSS 更新频率,非实时同步。
- 登录状态要求:首次全量导出需保持浏览器登录状态,存在一定操作门槛。
适合人群
- 希望数据自主备份的豆瓣重度用户
- 使用 Obsidian/Notion 等工具构建个人知识库的笔记爱好者
- 需要长期追踪阅读/观影历史的研究者或内容创作者
- 关注隐私与数据主权,希望减少平台依赖的数字游民
常规风险提示
- 账号安全:浏览器抓取模式需保持登录态,建议在私人设备操作,避免使用公共网络。
- 频率控制:严格遵守建议的延迟间隔,过快请求可能触发豆瓣反爬机制导致临时封禁。
- 数据完整性:部分下架条目可能显示异常,需人工复核关键数据。
- 环境变量管理:
DOUBAN_USER等配置涉及个人标识,避免提交至公共代码仓库。
---
技术实现:Node.js 生态,提供 HTTP 直链、Puppeteer CDP、浏览器控制台脚本三种抓取方案,以及独立的 RSS 同步模块,架构清晰易于扩展。