下载reddit自有视频的CC字幕
Reddit中很多视频,有Youtube转载的,网上有很多工具(如downsub)可以直接解析下载其视频和CC自动生成字幕。但也有些视频并非YT,所以这些方法就都不适用了。
现在总结了一条yt-dlp
命令可以实现,详情如下。
以Chrome浏览器为例:
首先下载Get cookies.txt LOCALLY(下载链接)导出 Netscape 格式的 Cookies:
浏览器转至要下载CC字幕的页面,点击安装好的Get cookies.txt LOCALLY插件
导出txt文件
记住导出文件所在的位置,到该位置文件夹运行CMD
yt-dlp --cookies cookies文件名.txt --write-subs --sub-lang en "视频URL"
结合字幕下载参数:
1 | yt-dlp --cookies cookies.txt \ |
参数说明 :
--write-subs
:下载字幕。--sub-lang en
:指定英文字幕(若需其他语言,替换en
或使用all
)。--convert-subs srt
:转换为通用 SRT 格式。--embed-subs
:将字幕嵌入视频文件(需视频支持)。
将视频 URL 用双引号包裹,避免 &
等符号被命令行解析
需要注意的是,上述命令方法在获取CC自动生成字幕的同时,亦将原音视频也下载下来了。如果介意,可以使用下面的命令略过音视频下载。
在原有命令中添加 --skip-download
参数,明确禁止视频和音频文件的下载,仅保留字幕文件:
1 | yt-dlp --skip-download --write-subs --sub-lang en --convert-subs srt --cookies cookies.txt "视频URL" |
参数说明:
--skip-download
:跳过视频和音频下载,仅执行元数据提取和字幕下载 。--convert-subs srt
:将字幕转换为通用 SRT 格式(默认可能为 JSON 或 WebVTT)。
输出路径自定义
若需指定字幕保存路径,使用 -o
参数:
1 | yt-dlp -o "字幕保存路径/%(title)s.%(ext)s" --skip-download --write-subs --sub-lang en "视频URL" |
示例:
1 | yt-dlp -o "/path/to/subtitles/%(title)s.%(ext)s" --skip-download --write-subs --sub-lang en "https://www.reddit.com/..." |
处理内嵌字幕
若字幕已内嵌在视频中(非独立文件),需额外步骤提取:
-
下载视频并提取内嵌字幕
(临时方案):
1
yt-dlp --write-subs --sub-lang en --convert-subs srt --cookies cookies.txt "视频URL"
-
下载完成后手动删除视频文件,保留
.srt
字幕文件。
3. 替代工具推荐
若需更灵活的字幕处理(如批量提取、翻译等),可结合以下工具:
Pyvideotrans
- 功能:支持视频字幕生成、翻译、配音及格式转换,可从视频中批量提取音频并识别为字幕 。
- 适用场景:需对字幕进行二次编辑或翻译时。
小红书双语字幕功能
- 特色:自动生成中英双语字幕,适合内容创作者快速适配多语言场景(需上传视频至平台) 。
Comment
WalineGiscus