SuperAPI AI 工具集

read-weread-export

办公与效率

查看项目

更新于 10-16 09:19

技能介绍

read-weread-export 用于将微信读书的划线笔记导出为 Markdown 或 PDF 文件。当用户表达“导出我的微信读书划线”“导出读书笔记”“把划线保存下来”“weread 导出”等意图时触发。

一、前置依赖 需要已安装 weread-skills(同目录下),并配置好环境变量 WEREAD_API_KEY。

二、使用方式与工作流

步骤 1:询问格式、范围、保存位置(每次必问,不可省略) 无论触发语是否提到这些信息,每次执行都必须先问完三个问题再动手。即使明确说了“导出全部为 PDF”,也要复述确认。三个问题为:输出格式(Markdown / PDF / 两者都要)、导出范围(全部书籍 / 指定书籍)、保存目录(回车默认当前工作目录,或输入绝对/相对路径)。答复不清晰时追问缺失项,不默认。保存路径处理:绝对路径原样使用;相对路径相对当前工作目录展开;回车使用当前工作目录;路径不存在则自动创建,不再追问。

步骤 2:拉取笔记本概览 调用 /user/notebooks 分页拉取所有有笔记的书,参数平铺在 body 顶层(不包在 params 里)。hasMore=1 时用最后一项的 sort 作为 lastSort 继续拉。汇总书籍数与总笔记数。

步骤 2.5:指定书籍不在书架上的处理 若用户选了“指定书籍”,但该书不在返回结果中(没有个人划线/笔记),须先询问是否改为导出这本书的热门划线(其他读者高频划线)。若用户同意,则调用 /store/search 获取 bookId、/book/chapterinfo 获取章节列表、/book/bestbookmarks 获取全书 Top 20 热门划线;在 Markdown 顶部标注“热门划线导出(非个人笔记)”,每条划线下方显示划线人数,不显示时间。

步骤 3:逐本拉划线和想法 对每本书并行调用 /book/bookmarklist 与 /review/list/mine(注意后者字段名是 bookid 全小写)。

步骤 4:组装 Markdown 按模板生成,文件名固定为 微信读书划线-YYYY-MM-DD.md。排版要点:书名用 ##、章节用 ###;划线正文用 > 引用块;时间格式 YYYY-MM-DD;想法在划线下方以 💭 前缀;整本书评单独放在该书末尾;每本书之间用 --- 分隔;顶部统计用粗体。排序强制规则:章节顺序按 chapters[].chapterIdx 升序,不按笔记创建时间排;章节内划线按 range 起始位置升序;未匹配章节的划线归入末尾“### 未分类”。排序须在生成前完成。

步骤 5:如需 PDF,转换 对生成的 MD 执行脚本 python3 ~/.claude/skills/read-weread-export/scripts/md_to_pdf.py <md路径> <pdf路径>,脚本依赖 Chrome。失败时回退到 Markdown 并提示用户。

步骤 6:报告结果 输出文件路径(可点击打开)与统计(N 本书 / X 划线 / Y 想法);耗时较长时提示进度。

三、注意事项 同一轮对话已调过 /user/notebooks 时直接复用结果,避免重复请求;超过 30 本书时分批并行调用(每批 5 本);某本书仅有书签无划线时标注“(仅书签,无可导出划线)”;所有 createTime 转为 YYYY-MM-DD(按本机时区);review 含 range 且匹配某条划线时贴在该划线下方,否则放章节末尾或全书末尾;章节标题按 chapterUid 映射,未匹配归入“## 未分类”;文件名中的 /、: 等字符替换为 -。

四、适用场景 适合需要备份或整理微信读书个人划线笔记、将笔记整理为结构化可读文档的用户。

五、限制 依赖 weread-skills 与 WEREAD_API_KEY;PDF 转换依赖 Chrome;热门划线导出仅覆盖全书 Top 20;具体接口返回字段与失败处理细节以实际环境为准。关于收费、价格等信息,资料中暂未提供。