返回 Skill 列表
extension
分类: 其它需要 API Key

小红书转Obsidian

将小红书帖子提取为Obsidian笔记。当用户分享小红书链接并想保存为markdown笔记时使用。支持单个帖子,...

person作者: jmin1113hubclawhub

xhs-to-obsidian

把小红书帖子一键提取为 Obsidian Markdown 笔记。

核心流程

  1. 检查 Cookies → 2. 提取内容 → 3. 视频转录(如有) → 4. 保存笔记

常量定义

| 常量 | 默认值 | |------|--------| | Cookies | ~/.openclaw/xhs-cookies.json | | Obsidian 目录 | ~/Documents/Obsidian Vault/xhs |

Step 0: 检查并设置 Cookies

Cookie 文件不存在时,引导用户从 Chrome 导出:

  1. 在 Chrome 打开 xiaohongshu.com 并登录
  2. 打开 DevTools (F12) → Console
  3. 运行以下代码复制 cookies:
copy(JSON.stringify(document.cookie.split('; ').map(c => {
  const [name, ...rest] = c.split('=');
  return { name, value: rest.join('='), domain: '.xiaohongshu.com', path: '/',
    expires: Date.now()/1000 + 86400*30, size: name.length + rest.join('=').length,
    httpOnly: false, secure: false, session: false, priority: 'Medium',
    sameParty: false, sourceScheme: 'Secure', sourcePort: 443 };
})))
  1. 保存到 ~/.openclaw/xhs-cookies.json

Step 1: 提取帖子

python3 {baseDir}/scripts/extract_post.py "<小红书URL>" --cookies ~/.openclaw/xhs-cookies.json --output ~/Documents/Obsidian\ Vault/xhs

输出为 JSON,包含 successfilepathtype(image/video)、video_url 等字段。

错误处理:

  • COOKIES_NOT_FOUND → 引导用户导出 cookies(见 Step 0)
  • POST_NOT_AVAILABLE → 帖子不可见(可能需要重新登录)
  • COOKIES_EXPIRED → cookies 过期,重新导出

Step 2: 视频转录(如帖子为视频)

如果返回 type: video 且包含 video_url,执行转录:

bash {baseDir}/scripts/video_transcribe.sh "<video_url>" "<post_id>" "<output_dir>"

转录完成后,将文本追加到笔记的 ## 视频转录 段落。

依赖(可选):

  • ffmpeg — 音频提取
  • mlx-whisperwhisper — 语音识别

安装:brew install ffmpeg && pip install mlx-whisper

Step 3: 保存笔记

extract_post.py 已自动保存。如需手动整理,格式如下:

# 标题(一句话洞察,非描述)

内容...

---

> **来源**: 小红书 · 作者名
> **日期**: YYYY-MM-DD
> **互动**: N赞 / N收藏 / N评论
> **标签**: tag1, tag2
> **链接**: https://www.xiaohongshu.com/explore/...

批量提取

多链接用换行分隔:

while read -r url; do
  python3 {baseDir}/scripts/extract_post.py "$url"
done <<EOF
https://www.xiaohongshu.com/explore/...
https://www.xiaohongshu.com/explore/...
EOF