如何用 NotebookLM API 把网页、PDF 和 YouTube 视频变成中文播客(中文教程)

Chinese-language tutorial. This page is written in Simplified Chinese for Chinese-speaking developers. The same material in English: How to automate NotebookLM with the Gemini Notebook API · Gemini Notebook API docs

6 分钟阅读 • 2026 年 10 月 4 日

目录

  1. 简介
  2. NotebookLM API 能生成什么:播客、视频概览、幻灯片、信息图
  3. NotebookLM API 价格
  4. 准备工作
  5. 如何用一次 API 调用生成 NotebookLM 中文播客
  6. 轮询任务并下载
  7. 完整流程:笔记本、来源与生成
  8. Python 示例
  9. 规模化:多账号与限流
  10. NotebookLM 自动化:n8n、Colab 和 AI 编程助手
  11. 生成效果示例
  12. 常见问题
  13. 结语

简介

用 useapi.net 的 NotebookLM API(Gemini Notebook API),一次 REST 调用就能把网页或 YouTube 视频交给你自己的 Google 账号,生成 NotebookLM 的 Audio Overview 播客,并下载 .m4a 文件,播客语言可以指定为中文。 不需要 Google Cloud 项目,也不需要 Gemini API Key,免费 Google 账号即可使用。

Google 已把 NotebookLM 更名为 Gemini Notebook,功能不变。普通 Google 账号没有官方 API。网页版能做的事,这个 API 都能用代码完成:建笔记本、加来源、带引用的问答、Deep Research,以及 Studio 里的全部生成功能。

本文由 useapi.net 维护者撰写,介绍的是我们自己的托管 API,示例代码开源在 GitHub。

NotebookLM API 能生成什么:播客、视频概览、幻灯片、信息图

POST /artifacts 用 type 参数选择要生成的内容:

生成内容 type 返回
Audio Overview(双人播客) audio,format 可选 deep_dive(默认)、brief、critique、debate m4a 音频
Video Overview(视频概览) video,format 可选 explainer(默认)、brief、cinematic、short mp4 视频
幻灯片 slides pdf 和 pptx
信息图 infographic png 图片
报告、交互式报告、数据表 report、interactive_report、table Markdown 文本或表格行
测验、闪卡、思维导图 quiz、flashcards、mindmap JSON

音频、视频(cinematic 除外)、报告、交互式报告、数据表、幻灯片和信息图都可以用 language 指定输出语言,简体中文是 zh_Hans。

NotebookLM API 价格

向 useapi.net 支付每月固定 15 美元,同一订阅包含 useapi.net 的所有 API,不只是 Gemini Notebook。每个订阅可以绑定 3 个 Google 账号,总数最多 100 个。生成在你自己的 Google 账号上进行,我们不按次、不按音频收费,Google 一侧的用量包含在账号现有的套餐里,免费套餐也可以。

  useapi.net Gemini Notebook API Google Gemini Notebook Enterprise API
账号 你自己的 Google 账号,免费或付费套餐均可 Google Cloud 项目中的 Enterprise 许可证
价格 每月固定 15 美元 按用户购买 Enterprise 许可证
带引用的问答 ✅ ❌
Deep Research ✅ ❌
Audio Overview ✅ ✅
视频概览、幻灯片、信息图、报告、测验、闪卡、思维导图 ✅ ❌
状态 实验性 预览版(Pre-GA)

Google 按账号设定用量预算,每 5 小时刷新一次,另有每周预算。按 Google 自己的估算,满额的 5 小时窗口至少可以启动 2 个(免费套餐)、9 个(Google AI Pro)或 181 个(Google AI Ultra)Audio Overview,实际完成后通常比估算更省。需要更多产量时,多绑定几个账号即可,详见规模化。

开始使用

每月 15 美元的订阅即可使用 useapi.net 上的所有 API:一个 Token,所有服务。每个服务最多绑定 3 个你自己的账号,useapi.net 负责 REST 接口、负载均衡和轮询。

订阅 — 每月 15 美元

没有国际信用卡?可以用加密货币订阅(加密货币付款不退款)。价格与批量方案见订阅页面。用 Stripe 付款,首次购买 14 天内、且成功生成少于 50 次可全额退款。

准备工作

  1. 注册 useapi.net 并获取 API Token,下面的示例都假设它保存在环境变量 USEAPI_TOKEN 里。
  2. 用自动化浏览器流程绑定 Google 账号:输入 Token,在远程浏览器里登录 Google 即可,不需要手动复制 Cookie。建议使用专用的 Gmail 账号,不要用个人主账号。

下面的一次性请求和新建笔记本都可以省略 email:只绑定一个账号时自动使用它,绑定多个账号时,API 会挑选空闲的账号。基于笔记本的调用总是在该笔记本所属的账号上运行。

如何用一次 API 调用生成 NotebookLM 中文播客

不用先建笔记本。把 urls(或粘贴的 text)直接发给 POST /artifacts,API 会在你的某个账号上新建笔记本、添加来源、等来源处理完,然后开始生成。youtube.com 和 youtu.be 链接会作为 YouTube 来源添加,一次最多 50 个链接。

JOBID=$(curl -s -X POST "https://api.useapi.net/v1/gemini-notebook/artifacts" \
  -H "Authorization: Bearer $USEAPI_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "type": "audio",
    "format": "brief",
    "length": "short",
    "language": "zh_Hans",
    "urls": ["https://zh.wikipedia.org/wiki/阿波罗11号"],
    "title": "阿波罗11号播客",
    "mode": "async"
  }' | jq -r '.jobid')

mode: "async" 会立即返回 201 和 jobid。默认的 mode: "sync" 最多等待 90 秒,播客通常需要几分钟,所以会先返回 202,之后一样要轮询。

轮询任务并下载

查询 GET /jobs/jobid,直到 status 变为 completed 或 failed。jobid 里含有 : 和 @,放进 URL 路径前要先编码。完成后的 result.files[].url 指向 GET /artifacts/download,下载时同样要带上 API Token。下面这个函数后面还会再用:

API=https://api.useapi.net/v1/gemini-notebook
enc() { jq -rn --arg v "$1" '$v|@uri'; }

wait_job() {
  [ -z "$1" ] || [ "$1" = "null" ] && { echo "提交失败,请查看响应中的 error"; return 1; }
  until curl -s "$API/jobs/$(enc "$1")" -H "Authorization: Bearer $USEAPI_TOKEN" > job.json &&
        jq -e '.status == "completed" or .status == "failed"' job.json > /dev/null; do
    sleep 15
  done
  jq '{status, title: .result.title, duration: .result.duration, error}' job.json
  jq -r '.result.files[]?.url' job.json | while read -r url; do
    curl -s -OJ -H "Authorization: Bearer $USEAPI_TOKEN" "$url"
  done
}

wait_job "$JOBID"

我们在 2026 年 10 月 4 日运行了上面的请求:约 6 分钟后任务完成,Google 生成了一段 99 秒的中文播客,标题为「阿波罗登月惊魂」,-OJ 按这个标题把文件保存为 阿波罗登月惊魂.m4a。

  • 失败的任务带有 error.code,例如 quota(用量不足)、sources(来源都无法使用)或 generation_failed。
  • 不想轮询,可以在请求里传 replyUrl,任务结束时会收到一次 POST,内容就是完整的任务记录。
  • 生成的文件留在笔记本里,下载链接只要笔记本和生成结果还在就一直有效。

完整流程:笔记本、来源与生成

想对同一组来源生成多种内容,或者上传本地文件,就先建一个笔记本。来源可以是网页、YouTube 视频、粘贴的文本、Google Drive 文件,以及上传的 PDF、Word、PowerPoint、EPUB、音频、视频等文件。

# 1. 新建笔记本
NOTEBOOK=$(curl -s -X POST "$API/notebooks" \
  -H "Authorization: Bearer $USEAPI_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"title": "阿波罗11号"}' | jq -r '.notebook')

# 2. 添加网页和 YouTube 视频
curl -s -X POST "$API/sources" \
  -H "Authorization: Bearer $USEAPI_TOKEN" \
  -H "Content-Type: application/json" \
  -d "$(jq -n --arg nb "$NOTEBOOK" '{
    notebook: $nb,
    urls: ["https://zh.wikipedia.org/wiki/阿波罗11号", "https://www.youtube.com/watch?v=xUcYQ7slmRw"]
  }')"

# 3. 上传 PDF,文件本身就是请求体
curl -s -X POST "$API/sources/upload?notebook=$(enc "$NOTEBOOK")&name=report.pdf" \
  -H "Authorization: Bearer $USEAPI_TOKEN" \
  -H "Content-Type: application/pdf" \
  --data-binary @report.pdf

# 4. 等所有来源处理完
until curl -s "$API/notebooks/$(enc "$NOTEBOOK")" -H "Authorization: Bearer $USEAPI_TOKEN" > notebook.json &&
      jq -e '[.sources[].status] | all(. == "ready" or . == "error")' notebook.json > /dev/null; do
  sleep 10
done

# 5. 生成中文信息图
JOBID=$(curl -s -X POST "$API/artifacts" \
  -H "Authorization: Bearer $USEAPI_TOKEN" \
  -H "Content-Type: application/json" \
  -d "$(jq -n --arg nb "$NOTEBOOK" '{notebook: $nb, type: "infographic", orientation: "portrait", language: "zh_Hans", mode: "async"}')" \
  | jq -r '.jobid')

wait_job "$JOBID"

实测中,三个来源约 30 秒全部就绪,竖版中文信息图约 2 分钟生成,得到一张 1536 × 2752 的 png,标题「阿波罗11号登月信息图」。把第 5 步的 type 换成 audio、video 或 slides,就能在同一个笔记本上继续生成播客、视频概览或幻灯片。完整的 19 步演示(包括问答、Deep Research 和修改单页幻灯片)见英文教程。

Python 示例

与上面的一次性请求基本相同(未指定 length,使用默认长度),用 Python 和 requests 写:

import os, time, requests
from urllib.parse import quote

API = 'https://api.useapi.net/v1/gemini-notebook'
H = {'Authorization': f"Bearer {os.environ['USEAPI_TOKEN']}"}

r = requests.post(f'{API}/artifacts', headers=H, json={
    'type': 'audio',
    'format': 'brief',
    'language': 'zh_Hans',
    'urls': ['https://zh.wikipedia.org/wiki/阿波罗11号'],
    'mode': 'async',
})
r.raise_for_status()
job = r.json()

while job['status'] in ('pending', 'processing'):
    time.sleep(15)
    r = requests.get(f"{API}/jobs/{quote(job['jobid'], safe='')}", headers=H)
    r.raise_for_status()
    job = r.json()

if job['status'] == 'failed':
    raise SystemExit(job['error'])

print(job['result']['title'], job['result']['duration'], '秒')
for f in job['result']['files']:
    with open(f"podcast.{f['format']}", 'wb') as out:
        out.write(requests.get(f['url'], headers=H).content)

这段脚本实测约 6 分半钟跑完,得到一段 70 秒的中文播客 podcast.m4a。批量处理链接列表的 Node.js 和 Python 脚本见 GitHub 示例仓库的 podcast/ 目录。

规模化:多账号与限流

这个 API 可以无人值守地运行:

  • 绑定多个 Google 账号后,每个新任务会分配给状态正常、有空闲任务槽、且该类型用量还够的账号,不需要自己盯着 5 小时和每周的预算。
  • 每个账号同时最多运行 maxJobs 个任务(默认 3,可设 1–10,用 POST /accounts 修改)。GET /jobs 显示每个账号上正在运行的任务。
  • 所有账号都忙或用量不足时,调用返回 429。如果 Google 给出了重置时间,响应里会带 retryAt,你的代码可以等到那个时间再试,或者用 email 把下一批发到别的账号,或者降低频率。
  • GET /accounts/email 返回账号的实时用量、两个窗口的重置时间,以及每种生成的当前估算。

NotebookLM 自动化:n8n、Colab 和 AI 编程助手

  • n8n 模板:把网页、YouTube 视频或博客的 RSS 订阅变成 NotebookLM 播客,导入即可使用。
  • Google Colab 笔记本:在浏览器里填入 Token 和链接,直接播放并下载播客。
  • Claude Code、Codex 等 AI 编程助手可以安装仓库里的 notebooklm-podcast 技能,用一句话生成播客:npx skills add useapi/notebooklm-api --skill notebooklm-podcast。

以上都在 useapi/notebooklm-api 仓库中。

生成效果示例

以下是通过同一个 Gemini Notebook API 生成的真实结果,来源是 Apollo 11 的英文维基百科页面、一段 NASA 的 YouTube 视频、一段粘贴文本和一个 PDF,取自英文教程,所以内容是英文的。

Audio Overview,brief 格式,short 长度,时长 1 分 31 秒,生成用时 4 分 36 秒:

Video Overview,explainer 格式,whiteboard 风格,完整时长 11 分 50 秒,这里是前 90 秒:

信息图,竖版,sketch_note 风格,1536 × 2752,生成用时 1 分 45 秒:

Gemini Notebook API 生成的 Apollo 11 信息图

常见问题

  • NotebookLM 有官方 API 吗? 普通 Google 账号没有。Google 只为 Gemini Notebook Enterprise 提供 API,需要在 Google Cloud 项目中购买 Enterprise 许可证,功能限于管理笔记本、添加来源和生成 Audio Overview。useapi.net 的 Gemini Notebook API 是第三方 REST API,驱动你自己的 Google 账号,免费和付费的个人套餐都能用,覆盖网页版的全部功能。对比见价格。
  • 需要 Gemini API Key 或 NotebookLM API Key 吗? 不需要。Google 不为普通账号发放 NotebookLM API Key,你用 useapi.net 的 API Token 调用接口,再通过自动化流程绑定一次 Google 账号即可,不需要 Google Cloud 项目。
  • 支持中文播客吗? 支持。在 POST /artifacts 里传 language: "zh_Hans",见上文的实测。language 适用于音频、视频(cinematic 除外)、报告、交互式报告、数据表、信息图和幻灯片,默认是 en。也可以用 POST /accounts 的 outputLanguage 为整个账号设置 Studio 输出语言。
  • 有免费的 NotebookLM API 吗? Google 一侧在免费账号上不收费。useapi.net 订阅每月 15 美元,用 Stripe 付款时,首次购买 14 天内且成功生成少于 50 次可全额退款,见退款政策。
  • 免费 Google 账号能用吗? 能。免费套餐每个 5 小时窗口的用量较少,付费的 Google AI 套餐提高用量上限,Cinematic 视频需要付费套餐。
  • 一个播客要生成多久? Audio Overview 通常 3–6 分钟,Video Overview 10 分钟以上,信息图和报告一两分钟,测验约一分半,闪卡和数据表不到一分钟。
  • NotebookLM 和 Gemini Notebook 是同一个产品吗? 是。Gemini Notebook 是 NotebookLM 自 2026 年 7 月起的新名字,本文的 API 就是 NotebookLM API。

更多问答见 Gemini Notebook API 常见问题(英文)。

结语

有问题欢迎加入我们的 Discord 服务器 或 Telegram 频道。

全部接口见 Gemini Notebook API 文档,示例代码见 GitHub 仓库。