如何使用 youtube-dl 仅下载视频字幕

如何使用 youtube-dl 仅下载视频字幕

如何使用 youtube-dl 下载视频列表的字幕?我需要一个选项。但是我找不到只下载字幕的选项

答案1

有一个选择,文件中提到

字幕选项:

--write-sub                      Write subtitle file
--write-auto-sub                 Write automatic subtitle file (YouTube only)
--all-subs                       Download all the available subtitles of the video
--list-subs                      List all available subtitles for the video
--sub-format FORMAT              Subtitle format, accepts formats preference, for example: "srt" or "ass/srt/best"
--sub-lang LANGS                 Languages of the subtitles to download (optional) separated by commas, use IETF language tags like 'en,pt'

例如,列出某个视频的所有字幕:

youtube-dl --list-subs https://www.youtube.com/watch?v=Ye8mB6VsUHw

下载所有字幕但不下载视频:

youtube-dl --all-subs --skip-download https://www.youtube.com/watch?v=Ye8mB6VsUHw

如果视频只有自动生成的字幕,则--all-subs仍然不会下载,而是使用:

youtube-dl --write-auto-sub --skip-download https://www.youtube.com/watch?v=Ye8mB6VsUHw

答案2

或者您只能下载一个字幕

youtube-dl --write-sub --sub-lang en --skip-download URL

答案3

只需运行以下命令

youtube-dl --write-auto-sub --convert-subs=srt --skip-download URL 

例如你正在下载 https://www.youtube.com/watch?v=example标题为“example” --convert=srt的文件将输出到名为的文件,example.en.srt其中en代表英语es、西班牙语等。

该文件将包含如下内容:

00:00:04.259 --> 00:00:05.259
>> I’m Elon Musk.

00:00:05.259 --> 00:00:06.669
>> What is your claim to fame?

00:00:06.669 --> 00:00:07.669
>> I’m the founder of

00:00:07.669 --> 00:00:08.669
Tesla.com.

可选-如果您需要清理文本,您可以使用python来稍微清理一下:

import re
bad_words = ['-->','</c>'] 


with open('example.en.vtt') as oldfile, open('newfile.txt', 'w') as newfile:
    for line in oldfile:
        if not any(bad_word in line for bad_word in bad_words):
            newfile.write(line)


with open('newfile.txt') as result:
    uniqlines = set(result.readlines())
    with open('sub_out.txt', 'w') as rmdup:
        mylst = map(lambda each: each.strip("&gt;&gt;"), uniqlines)
        print(mylst)
        rmdup.writelines(set(mylst))

输出newfile.txt:

I’m Elon Musk.
What is your claim to fame?
I’m the founder of
Tesla.com.

答案4

从 YouTube 下载字幕的另一种简单方法是下载Google2SRT。Google2SRT 是一款适用于 Windows、Mac 和 Linux 的免费开源程序,能够从 YouTube 视频中下载、保存和转换多个字幕。

用法

单击链接查看步骤 1 和 2 的屏幕截图。

  1. 将 URL 粘贴到谷歌字幕文本框并点击

  2. 通过选中提供的相应复选框来选择语言,然后按

  3. 查看在SRT 字幕文本框来定位 SRT 文件。

相关内容