toMedia
平台专项

bilibili

bilibili 视频下载专项指南

📺 bilibili 下载指南

基础下载

# 下载 bilibili 视频
yt-dlp "https://www.bilibili.com/video/BV1xx411c7mD"

# 使用 BV 号
yt-dlp "BV1xx411c7mD"  # 部分版本支持直接使用 BV 号
import yt_dlp

url = "https://www.bilibili.com/video/BV1xx411c7mD"

with yt_dlp.YoutubeDL() as ydl:
    ydl.download([url])

分P视频

bilibili 的多P视频每P是独立的视频段:

# 下载所有分P
yt-dlp "https://www.bilibili.com/video/BV1xx411c7mD"

# 只下载第 1 P
yt-dlp -I 1 "https://www.bilibili.com/video/BV1xx411c7mD"

# 下载第 3-5 P
yt-dlp -I 3:5 "https://www.bilibili.com/video/BV1xx411c7mD"

# 按分P编号命名
yt-dlp -o "%(title)s - P%(playlist_index)02d.%(ext)s" "URL"
import yt_dlp

# 下载指定分P
ydl_opts = {
    'playlist_items': '1-3',  # 下载第 1-3 P
    'outtmpl': '%(title)s - P%(playlist_index)02d.%(ext)s',
}

with yt_dlp.YoutubeDL(ydl_opts) as ydl:
    ydl.download(["https://www.bilibili.com/video/BV1xx411c7mD"])

大会员/付费内容

需要 Cookies 认证才能下载:

# 使用浏览器 Cookies
yt-dlp --cookies-from-browser chrome "https://www.bilibili.com/bangumi/play/ep12345"

# 使用 cookies.txt 文件
yt-dlp --cookies cookies.txt "https://www.bilibili.com/bangumi/play/ep12345"
import yt_dlp

ydl_opts = {
    'cookiesfrombrowser': ('chrome',),
    # 或 'cookiefile': 'cookies.txt',
}

with yt_dlp.YoutubeDL(ydl_opts) as ydl:
    ydl.download(["https://www.bilibili.com/bangumi/play/ep12345"])

大会员内容的下载质量取决于你的账号等级。非大会员账号只能下载到 1080P,大会员可下载 4K/HDR。

番剧/电影

# 下载番剧单集
yt-dlp "https://www.bilibili.com/bangumi/play/ep12345"

# 下载整季(播放列表模式)
yt-dlp "https://www.bilibili.com/bangumi/play/ss12345"

# 按集编号命名
yt-dlp -o "%(series)s/EP%(playlist_index)02d - %(title)s.%(ext)s" \
  "https://www.bilibili.com/bangumi/play/ss12345"

收藏夹下载

# 下载收藏夹(需要 Cookies)
yt-dlp --cookies-from-browser chrome \
  "https://space.bilibili.com/UID/favlist?fid=FAVID"

bilibili 画质对照

画质qn 值需要会员
360P16
480P32
720P64
720P6074
1080P80
1080P+112✅ 大会员
1080P60116✅ 大会员
4K120✅ 大会员
HDR125✅ 大会员
杜比视界126✅ 大会员
8K127✅ 大会员

bilibili 提取音频

# bilibili 视频提取音频
yt-dlp -x --audio-format m4a --audio-quality 0 \
  --embed-thumbnail --add-metadata \
  -o "%(title)s.%(ext)s" \
  "https://www.bilibili.com/video/BV1xx411c7mD"
import yt_dlp

ydl_opts = {
    'format': 'bestaudio/best',
    'outtmpl': '%(title)s.%(ext)s',
    'writethumbnail': True,
    'overwrites': True,
    'postprocessors': [
        {
            'key': 'FFmpegExtractAudio',
            'preferredcodec': 'm4a',
            'preferredquality': '0',
        },
        {'key': 'EmbedThumbnail'},
        {'key': 'FFmpegMetadata'},
    ],
}

with yt_dlp.YoutubeDL(ydl_opts) as ydl:
    ydl.download(["https://www.bilibili.com/video/BV1xx411c7mD"])

常见问题

下载速度慢

bilibili 默认 CDN 速度有时较慢,可尝试:

# 使用 --concurrent-fragments 加速
yt-dlp -N 4 "URL"

无法下载 / 403 错误

# 更新 yt-dlp 到最新版本
yt-dlp -U

# 使用 cookies(bilibili 经常更新反爬策略)
yt-dlp --cookies-from-browser chrome "URL"

字幕下载

# bilibili 的 CC 字幕
yt-dlp --write-sub --sub-lang "zh-Hans" "URL"

# 有些视频字幕在 AI 自动生成中
yt-dlp --write-auto-sub --sub-lang "zh-Hans" "URL"

On this page