首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >youtube-dl,如何将youtube播放列表的所有子部分都写到一个文件中?

youtube-dl,如何将youtube播放列表的所有子部分都写到一个文件中?
EN

Unix & Linux用户
提问于 2019-03-30 17:24:13
回答 1查看 1.5K关注 0票数 3

我在Fedora 28操作系统上,有youtube-dl版本的2019.03.18,我想从youtube上下载所有的subs,并且只下载Crashcourse播放列表的子程序,其中包括45个视频。

我希望所有的子程序都写在一个*.txt文件中,这样我就可以编辑它并打印- it格式(与evince一起),并应用适当的页面编号/页眉/页脚。

我尝试了以下几点:

代码语言:javascript
运行
复制
youtube-dl --skip-download --write-sub --playlist-items 6-10  >> all-subs.txt

然而,这只是将“冗长”的输出写到all-subs.txt,而只是下载了*.vtt格式的子程序(我不知道为什么youtube-dl不会以任何其他格式下载,即使被要求这样做,一个小故障仍然没有解决)。

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2019-03-30 19:15:57

youtube-dl似乎不支持这种特性,但您可以使用cat连接所有下载的文件:

代码语言:javascript
运行
复制
$ youtube-dl --output '%(autonumber)s.%(ext)s' --skip-download --write-sub 'https://www.youtube.com/watch?v=-5wpm-gesOY' 'https://www.youtube.com/watch?v=w3_0x6oaDmI'
[youtube] -5wpm-gesOY: Downloading webpage
[youtube] -5wpm-gesOY: Downloading video info webpage
[info] Writing video subtitles to: 00001.en-GB.vtt
[youtube] w3_0x6oaDmI: Downloading webpage
[youtube] w3_0x6oaDmI: Downloading video info webpage
[info] Writing video subtitles to: 00002.en.vtt
代码语言:javascript
运行
复制
$ cat ./* > all-subs.vtt

请注意,需要%(autonumber)s来按顺序连接文件。从播放列表下载时,可以使用%(playlist_index)s

我不知道为什么youtube-dl不会以任何其他格式下载,即使被告知这样做,一个仍未解决的故障。

虽然可以使用--sub-format选项请求特定的格式,但请注意,这种格式的可用性取决于网站。据我所知,YouTube只提供ttmlvtt文件(而且我可以下载两种格式的字幕):

代码语言:javascript
运行
复制
$ youtube-dl --list-subs 'https://www.youtube.com/watch?v=-5wpm-gesOY'
...
Available subtitles for -5wpm-gesOY:
Language formats
en-GB    vtt, ttml
ru       vtt, ttml
fr       vtt, ttml
...
代码语言:javascript
运行
复制
$ youtube-dl --output '%(autonumber)s.%(ext)s' --skip-download --sub-format 'vtt' --write-sub 'https://www.youtube.com/watch?v=-5wpm-gesOY'
[youtube] -5wpm-gesOY: Downloading webpage
[youtube] -5wpm-gesOY: Downloading video info webpage
[info] Writing video subtitles to: 00001.en-GB.vtt
代码语言:javascript
运行
复制
$ youtube-dl --output '%(autonumber)s.%(ext)s' --skip-download --sub-format 'ttml' --write-sub 'https://www.youtube.com/watch?v=-5wpm-gesOY'
[youtube] -5wpm-gesOY: Downloading webpage
[youtube] -5wpm-gesOY: Downloading video info webpage
[info] Writing video subtitles to: 00001.en-GB.ttml
票数 2
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/509610

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档