B 站视频转录文字完整指南

本指南教你如何将 B 站视频转换为文字稿,适用于无字幕视频的语音转录。


目录

  1. 方法概述
  2. 环境准备
  3. 使用脚本自动转录
  4. 手动分步操作
  5. 常见问题解决

方法概述

B 站很多视频没有官方字幕,本方案通过以下步骤获取文字:

下载视频音频 → Whisper AI 语音识别 → 输出带时间戳的文字稿

优点:

  • 无需手动听写,全自动转录
  • 支持中文识别,准确率较高
  • 输出带时间戳的精确保存

缺点:

  • 需要联网下载模型(约 140MB)
  • 转录速度取决于视频长度和电脑性能

环境准备

1. 安装 Python

确保已安装 Python 3.8 或更高版本:

python --version

2. 安装依赖包

打开命令行(PowerShell 或 CMD),运行:

pip install yt-dlp openai-whisper --user

--user 参数将包安装到用户目录,避免权限问题。

3. 验证安装

pip show yt-dlp
pip show openai-whisper

看到包信息表示安装成功。


使用脚本自动转录

1. 获取视频 BV 号

从 B 站视频 URL 中提取 BV 号:

  • URL: https://www.bilibili.com/video/BV1oPFDzQEG7?t=3.2
  • BV 号:BV1oPFDzQEG7

2. 运行转录脚本

在项目目录下执行:

python bilibili_transcribe.py BV1oPFDzQEG7 output.txt base

参数说明:

参数 说明 可选值
BV 号 B 站视频 BV 号 必填
输出文件 转录结果保存路径 可选,默认 {BV 号}_transcript.txt
模型大小 Whisper 模型 tiny/base/small/medium/large

3. 查看结果

转录完成后,打开输出文件查看:

  • 视频标题、UP 主、BV 号
  • 带时间戳的分段字幕
  • 完整文字稿

手动分步操作

如果不想使用脚本,可以手动执行以下步骤:

步骤 1:下载视频音频

使用 yt-dlp 下载音频:

yt-dlp -x --audio-format mp3 -o audio.mp3 "https://www.bilibili.com/video/BV1oPFDzQEG7"
  • -x: 提取音频
  • --audio-format mp3: 转换为 MP3 格式
  • -o audio.mp3: 输出文件名

步骤 2:使用 Whisper 转录

whisper audio.mp3 --model base --language zh --output_dir .
  • --model base: 使用 base 模型(中文效果好)
  • --language zh: 指定中文
  • --output_dir .: 输出到当前目录

转录后会生成 audio.txtaudio.srt 文件。

步骤 3:整理文字稿

将生成的文字稿整理为需要的格式。


模型选择建议

模型 显存占用 转录速度 中文准确率 适用场景
tiny ~1GB 最快 一般 快速测试
base ~1GB 不错 日常使用(推荐)
small ~2GB 中等 对准确率有要求
medium ~3GB 很好 专业用途
large ~5GB 最慢 最佳 最高质量需求

常见问题解决

1. 权限错误:[WinError 5] 拒绝访问

解决: 添加 --user 参数安装到用户目录

pip install yt-dlp openai-whisper --user

2. 找不到 yt-dlp 命令

原因: yt-dlp 安装到了用户 Scripts 目录,但该目录不在 PATH 中。

解决: 使用 Python 模块方式调用,或手动添加路径:

# 添加用户 Scripts 到 PATH(PowerShell)
$env:Path += ";C:\Users\你的用户名\AppData\Roaming\Python\Python312\Scripts"

3. 转录中文不准确

解决:

  • 确保指定 --language zh
  • 尝试更大的模型(如 smallmedium
  • 检查音频质量,嘈杂音频会影响识别

4. 下载速度慢

解决:

  • 检查网络连接
  • 尝试更换网络环境
  • B 站视频可能需要大会员才能下载高音质

5. 显存不足

解决: 使用更小的模型

python bilibili_transcribe.py BV 号 output.txt tiny

输出文件示例

视频标题:手把手教你在国内使用 Claude Code!小白一听就懂!
UP 主:我是阿众
BV 号:BV1oPFDzQEG7
============================================================

[0.0s - 3.0s] 克拉的扣的可以说是目前最火的 AI 工具了
[3.0s - 5.0s] 它不仅可以写代码还能够写文案
[5.0s - 6.6s] 甚至能够直接操控你的电脑
...

============================================================

完整文字稿:

克拉的扣的可以说是目前最火的 AI 工具了它不仅可以写代码还能够写文案甚至能够直接操控你的电脑...

附录:完整命令速查

# 安装依赖
pip install yt-dlp openai-whisper --user

# 自动转录(推荐)
python bilibili_transcribe.py BV1oPFDzQEG7 output.txt base

# 手动下载音频
yt-dlp -x --audio-format mp3 -o audio.mp3 "https://www.bilibili.com/video/BV1oPFDzQEG7"

# 手动转录
whisper audio.mp3 --model base --language zh --output_dir .

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐