SuperAPI AI 工具集

bilibili-render-pdf

写作与研究

查看项目

更新于 10-15 17:38

技能介绍

用途

bilibili-render-pdf 用于将 Bilibili 视频(讲座、教程或技术分享)转换为一份完整、可编译的 LaTeX 课程笔记,并渲染为最终 PDF。它扩展了 youtube-render-pdf 的工作流,针对 Bilibili 平台的字幕稀缺、登录限制高清、多分P视频以及平台特有的非教学内容做了专门适配。

主要能力

  • 从 Bilibili URL 生成专业的中文课程笔记,输出为完整的 .tex 文档并成功编译为 PDF。
  • 使用视频的实际教学内容,而不仅仅是字幕转录。
  • 在 .tex 和渲染后的 PDF 首页放置视频原始封面图(如可用)。
  • 包含所有必要的高价值关键帧作为插图,不添加冗余截图。
  • 以总结与延伸章节结尾,包含讲者的实质性收尾讨论和提炼的要点。
  • 使用 \section{...} 和 \subsection{...} 进行结构化组织。
  • 文档从 \documentclass 到 \end{document} 完整。

使用方式

源获取

  1. 元数据检查:先检查视频元数据,优先获取标题、章节、时长、缩略图可用性和字幕可用性。检测多分P视频,列出所有分P并询问用户要处理哪些部分。

  2. 字幕获取(三级回退):

    • 优先级 1:CC 字幕(平台内嵌)。优先使用手动字幕而非自动生成字幕,优先 zh-Hans、zh-CN、zh 或 ai-zh 字幕轨道。保留字幕时间戳。
    • 优先级 2:Whisper 语音转文字(无 CC 字幕时)。先提取音频,再用 Whisper 转录生成带时间戳的 SRT 文件。
    • 优先级 3:纯视觉模式(音频质量太差时)。完全跳过字幕,依靠密集帧采样从视频帧中提取教学内容。
  3. 视频和封面下载:在编写 .tex 之前获取视频原始封面图,优先使用平台元数据中暴露的最高分辨率缩略图。选择当前环境中实际可下载的最高分辨率视频源。注意 Bilibili 的 1080P+ 通常需要登录 cookies。

长视频策略

  • 视频超过 20 分钟或字幕文件超过 300 条时,将工作拆分为更小的片段。
  • 优先按章节边界或分P边界拆分。
  • 有子代理时,为不同片段并行生成多个子代理。
  • 主代理必须将片段输出整合为一个统一大纲和连贯的最终叙述。

教学内容规则

从以下内容构建笔记:视频标题和章节结构、原始封面图和关键元数据、屏幕上的图表/公式/表格/架构幻灯片、字幕解释/示例/口头强调、高信号原始对话片段、代码片段。

跳过:问候、闲聊、无信息量的例行互动、赞助、频道事务(一键三连等)、结束客套话。

写作规则

  • 除非用户明确要求其他语言,否则用中文写笔记。
  • 用 \section{...} 和 \subsection{...} 组织文档。
  • 避免过度使用“不是……而是……”句式。
  • 从 assets/notes-template.tex 开始,填写元数据块(包括本地封面图路径),替换正文内容块。
  • 首页必须包含视频原始封面图(如可用)。
  • 在能实质性改善解释时使用插图。
  • 数学公式:先用中文解释公式要表达什么,再用 $$...$$ 展示,然后立即用平铺列表解释每个符号。
  • 代码示例:在列表前解释代码作用,用 lstlisting 包裹,包含描述性标题。
  • 使用 importantbox、knowledgebox、warningbox、dialoguebox 突出教学信号。
  • 每个主要章节以 \subsection{本章小结} 结尾。
  • 文档以最终顶级章节(如 \section{总结与延伸})结尾。

插图处理

  • 按必要性和教学价值选择插图,不按任意配额。
  • 定位候选帧时偏向高召回率。
  • 帧理解必须来自直接视觉检查,使用 view image 工具。
  • 不要用 OCR 工具替代视觉理解。
  • 帧选择检查清单:相关性、所需内容可见、完全展开状态、最佳邻近候选、可读性。
  • 帧命名:先用基于时间戳的中性名称,视觉确认后再语义化重命名。
  • 使用带时间戳的字幕文件作为关键帧搜索的主要定位器。

适用场景

  • 将 Bilibili 上的讲座、教程或技术分享转换为结构化课程笔记。
  • 需要从视频中提取公式、代码、图表并整理为可编译 LaTeX 文档。
  • 处理多分P视频、字幕稀缺或需要登录才能获取高清源的 Bilibili 视频。

限制

  • Bilibili 1080P+ 通常需要登录 cookies,需提示用户使用 yt-dlp --cookies-from-browser chrome。
  • 弹幕不作为教学内容来源(太嘈杂),仅使用 CC 字幕或 Whisper 输出。
  • 字幕稀缺时依赖 Whisper 或纯视觉模式,可能影响内容提取的准确性。
  • 具体收费、价格、平台支持范围等信息暂未提供。