把你的豆瓣喂给 AI。 把豆瓣的书影音记录导出到本地,然后让 AI 读懂你的文化偏好,回答关于"你是谁"的问题。
一个 Claude Code Skill。
很多老豆瓣用户攒了十年以上的书/影/音标记 —— 这是你手上信噪比最高的个人数据集之一。现有的导出工具要么是浏览器扩展(数据锁在扩展里),要么是一次性脚本(数据锁在一个 CSV 里,永远没有 AI 读过)。
这个项目把这份数据直接接进 AI Agent。 一次性导入之后,你可以问 Claude Code(或任何支持 skill 的 Agent):
- "我 2015 年读的那些书里,哪些塑造了我现在的思维方式?"
- "有哪些书在我的想读列表里挂了 5 年以上?"
- "根据我打过 5 星的电影,我可能会喜欢什么新类型?"
- "对比一下我 2013 年和 2023 年的品味。"
git clone https://github.com/imfangs/douban-ai.git
cp -r douban-ai/skill ~/.claude/skills/douban重启 Claude Code,然后在新 session 里输入:
/douban
Claude 会引导你完成 Cookie 设置、跑导出脚本、生成你的画像摘要。
首次 Cookie 设置: 详见 skill/references/cookie-guide.md。简版:
mkdir -p ~/.douban-export
# 用你顺手的编辑器把浏览器 F12 复制的 Cookie 粘进去:
open -e ~/.douban-export/cookie.txt
chmod 600 ~/.douban-export/cookie.txt三个脚本都是独立的 Python 3,能单独跑:
cd douban-ai/skill
pip install requests beautifulsoup4
python3 scripts/export.py <你的豆瓣用户 ID>
python3 scripts/profile.py <你的豆瓣用户 ID>
python3 scripts/query.py <你的豆瓣用户 ID> five-star --category movie --limit 20数据全部落在 ~/Documents/DoubanExport/<user>/。
douban-ai/
├── skill/ ← Claude Code skill 本体(可以整个 cp 出去用)
│ ├── SKILL.md Claude 加载的主入口
│ ├── scripts/ export.py · profile.py · query.py
│ ├── references/ cookie-guide.md · privacy.md · data-schema.md
│ └── README.md
├── README.md ← 本文件
└── LICENSE MIT
- 选择 > 文本。 大多数豆瓣用户几乎不写短评 —— 他们的品味信号在"选了什么标记"里,不在评论文本里。不要构建假设"用户评论丰富"的工具。
- 想读 = 理想中的自己。 "想读"和"已读"之间的落差,是你能拿到的最强品味信号之一。它揭示了用户理想化的自己活在哪里。
- 5 星 ≠ 10 分制的 5。 对多数豆瓣用户来说,5 星是"这个我要留在人生里"的认证,不是数字评分。把 5 星列表当作私人经典看待,而不是"评分前 10%"。
- 数据永不离开本机。 全部本地处理。Cookie 存在
~/.douban-export/,导出数据存在~/Documents/DoubanExport/。详见skill/references/privacy.md。 - 组合小查询。 AI Agent 应该用多次小查询(
five-star、by-year、wishlist、search)拼出答案,而不是把整个 CSV 吞进上下文。query.py就是为这个用法设计的。
豆瓣服务器 ←──(带 Cookie 的 GET 请求,2-4 秒/页)── 你的机器
│
├─→ ~/Documents/DoubanExport/<user>/
│ *.csv · *.json · *.md · manifest.json
│
└─→ Claude Code / 其他 AI
(通过 query.py 按需读取,不吞整表)
除了豆瓣自己,这个 skill 不会向任何服务器发数据。无遥测,无 phone-home,无第三方分析。
- 抓完整长评(当前只有 140 字预览)
- 抓用户在标记时打的自定义 tag
- 可选的 MCP server 包装(让非 Claude Code 的 Agent 也能消费这份数据)
- NeoDB 导入路径(给已经迁移出豆瓣的用户)
- 豆瓣 FM 红心(当前只能走 Android ADB,参见 yunhaiming1542/douban-fm-redheart-export)
抓取逻辑参考了几个前人的开源项目:
- zzht1/douban-export — 分页与解析思路
- einverne/douban-export — URL 结构与分页
- x1ao4/douban-rating-exporter — 最小依赖 requests+bs4 方案
本项目的贡献在于:把抓取能力打包成一个 Claude Code 原生 Agent Skill,加了 profile.py(生成 AI 可读的画像摘要)和 query.py(组合小查询而非上下文倾泻)。
MIT