19,095 颗星背后:notebooklm-py 把 NotebookLM 变成了可编程的 AI Agent 工具
Google NotebookLM 是目前最接近「让 AI 真正读懂你文档」的产品——上传几篇论文,它能生成播客、PPT、Quiz、闪卡,还能就文档内容进行带引用的对话。但它的核心痛点也很明显:没有官方 API,所有操作都得在网页上手动点。
开发者 Teng Lin 用逆向工程补上了这个缺口。notebooklm-py 是一个非官方的 Python SDK + CLI + AI Agent Skill,2025 年 1 月发布,至今已拿下 19,095 颗 Star、2,564 个 Fork,最新版本 v0.8.2 三天前(2026-09-02)刚发布。
它到底能做什么
这个库的本质是逆向 NotebookLM 的内部 RPC 协议(Google 的 batchexecute 协议,和 Google Photos、Translate 用的是同一套机制),把原本只在网页 UI 里存在的功能全部暴露成了 Python API、CLI 命令和 AI Agent Skill 三种调用方式。
NotebookLM 网页版有的,它都有:
- 创建/管理笔记本、添加来源(URL、PDF、YouTube、Google Drive)
- 问答对话(带原文引用)
- 生成 Audio Overview(播客风格,4 种格式、3 种时长、50+ 语言)
- 生成 Video Overview、Slide Deck、Quiz、闪卡、信息图、思维导图
- 分享与权限管理
网页版没有、它有:
- 批量下载:一次导出所有产物,指定格式(MP3/MP4/PDF/PNG/CSV/JSON/Markdown)
- 结构化导出:Quiz 和闪卡可以导出为 JSON 或 Markdown,不只是网页里的交互视图
- 思维导图 JSON 提取:拿到完整的层级数据,自己接可视化工具
- PPT 下载:网页只给 PDF,它可以下 PPTX
- 来源全文提取:拿到任意来源被索引后的完整文本
- 程序化分享:批量配置权限,不用在 UI 里一个个点
v0.8.0(2026-08-03)新增的两个集成值得关注:
- MCP Server:通过 Model Context Protocol 暴露工具,Claude Desktop、Roo Code、Cursor 这些支持 MCP 的客户端可以直接连
- REST API Server:单租户自托管,给 HTTP 客户端用
v0.8.2(2026-09-02)刚引入了 Android 后端,可以用 NotebookLM 的原生移动 API 作为 Web 后端的替代方案,安装 android extra 后 --backend android 切换。
三种使用方式
1. Python API(异步,适合应用集成)
import asyncio
from notebooklm import NotebookLMClient
async def main():
async with await NotebookLMClient.from_storage() as client:
nb = await client.notebooks.create("Research")
await client.sources.add_url(nb.id, "https://arxiv.org/abs/2310.06825", wait=True)
result = await client.chat.ask(nb.id, "这篇论文的核心贡献是什么?")
print(result.answer)
# 生成播客并下载
status = await client.artifacts.generate_audio(nb.id, instructions="用中文做一集有趣的播客")
await client.artifacts.wait_for_completion(nb.id, status.task_id)
await client.artifacts.download_audio(nb.id, "podcast.mp3")
asyncio.run(main())
2. CLI(适合快速操作和脚本)
pip install "notebooklm-py[browser]"
playwright install chromium
notebooklm login # 打开浏览器登录 Google 账号
notebooklm create "我的研究项目"
notebooklm source add "https://example.com/paper.pdf"
notebooklm ask "核心发现是什么?"
notebooklm generate audio "做一个深度讨论风格"
notebooklm download audio ./podcast.mp3
notebooklm generate quiz --difficulty hard
notebooklm download quiz --format json ./quiz.json
3. AI Agent Skill(Claude Code / OpenClaw)
notebooklm skill install
装完之后在 Claude Code 里直接用自然语言操作:
- 「把这篇论文做成播客」
- 「下载 Quiz 的 Markdown 版本」
- 「给我生成一份深度研究摘要」
它内置了 SKILL.md,Claude Code 装好后直接能认 /notebooklm 命令,不需要记任何 API 用法。
适合谁,不适合谁
适合:
- 用 Claude Code、Codex、OpenClaw 等编程 Agent 的人,想让 AI 在对话中引用你自己的文档库(而不是训练数据)
- 研究人员,一次性处理大量 PDF / 论文,做批量分析和内容生成
- 内容创作者,把文档批量转成播客、PPT、Quiz
- 想给 AI Agent 搭「知识记忆层」的人——NotebookLM 本身就是最好的 RAG 引擎,接进来比自建省事得多
不适合:
- 需要稳定生产环境的人(它用未公开 API,Google 随时可能改)
- 纯 NotebookLM 普通用户,偶尔用一下的人,网页 UI 完全够
- 企业需要 SLA 保证的场景,官方 Enterprise API 才是正途
认证方式
没有 Google API Key,靠 Playwright 浏览器抓 Cookie。三种模式:
| 方式 | 优点 | 缺点 |
|---|---|---|
--browser-cookies chrome |
最省事,登录一次复用 | 需要手动导出 Cookie |
--browser msedge |
支持企业 SSO | 需要 Edge |
交互式 notebooklm login |
通用 | 每次都要开浏览器 |
Cookie 有时效,长期运行需要定期刷新。
实际用法举例
如果你在用 Claude Code 处理一个代码库,可以这样把它接进来:
# 安装 skill
notebooklm skill install
# 在 Claude Code 里
/notebooklm create "Project Memory"
/notebooklm source add ./docs/architecture.md
/notebooklm source add ./readme.md
/notebooklm generate audio "用轻松的方式介绍这个项目架构"
NotebookLM 做的是「基于文档的推理」——Gemini 在后端读完你的文档,回答问题时自带引用,不容易 hallucinate。这和让大模型直接读上下文相比,Token 消耗完全在 NotebookLM 侧,Claude Code 只需要拿到最终答案。
下一步建议
想快速验证?按这个顺序:
第一步(5 分钟):安装体验
pip install "notebooklm-py[browser]"
playwright install chromium
notebooklm login
notebooklm create "Test"
notebooklm source add "https://en.wikipedia.org/wiki/Artificial_intelligence"
notebooklm ask "AI 的定义是什么?"
第二步(如果你用 Claude Code):
notebooklm skill install
# 然后在 Claude Code 对话里直接用自然语言
第三步(如果想批量处理):
参考文档中的 Recipes 章节——「零 Token 研究卸载」模式:把 30 份文档扔进 notebook,让 NotebookLM 做分析,你的 Agent 只处理最终结果。
相关链接
- GitHub:https://github.com/teng-lin/notebooklm-py
- PyPI:https://pypi.org/project/notebooklm-py
- 文档:https://github.com/teng-lin/notebooklm-py?tab=readme-ov-file#documentation
- SKILL.md(Claude Code Skill):https://github.com/teng-lin/notebooklm-py/blob/main/SKILL.md
- v0.8.2 Release:https://github.com/teng-lin/notebooklm-py/releases/tag/v0.8.2
- 入门教程(软件玩家):https://pcrookie.com/notebooklm-py-guide
- 技术解析(DEV Community):https://dev.to/wonderlab/one-open-source-project-a-day-no-77-notebooklm-py-turning-google-notebooklm-into-a-3ifa
- 19k Star 的项目,证明市场对「NotebookLM 可编程化」有真实需求。官方不动,社区先动——这是开源最好的剧本。*
评论区
登录后可评论。