仅使用 youtube-dl 下载 YouTube 字幕时指定字幕选项

Shr*_*dal 6 text-to-speech python-3.x youtube-dl

我想下载具有以下规格的 YouTube 播放列表的字幕:

  1. 仅提供英语
  2. srt格式
  3. 只有字幕文件,而不是视频本身

我尝试过以下代码片段。但它正在下载所有可用语言和 vtt 格式的字幕。

ydl_opts = {
    'allsubtitles': True,
    'writesubtitles': True,
    'convertsubtitles':True,
    'skip_download':True,
    'outtmpl': 'C:/Users/shrayani.mondal/Desktop/Personal/Python Projects/Speech to text/Subtitles/%(title)s.%(ext)s',
    #'subtitlesformat': 'srt'
    'subtitleslangs':'en',
    'postprocessors': [{
        'key': 'FFmpegSubtitlesConvertor',
        'format': 'srt',
    }],
}
with youtube_dl.YoutubeDL(ydl_opts) as ydl:
    ydl.download(['https://www.youtube.com/watch?v=Lp7E973zozc&list=PLQltO7RlbjPJnbfHLsFJWP-DYnWPugUZ7'])
Run Code Online (Sandbox Code Playgroud)

我的第二个目标是为没有字幕的视频使用自动生成的英文字幕。我该如何包含 if 语句呢?

Tip*_*sor -1

您只能使用这种方式下载字幕。

youtube-dl --write-sub --write-auto-sub --skip-download YOURLINK
Run Code Online (Sandbox Code Playgroud)

默认下载字幕语言为英语。此链接或 youtube-dl --help 中有更多选项(在此处输入链接描述

默认字幕格式为 vtt。你能转换成srt吗?尝试使用 youtube-dl 或互联网上的简单转换器。