Netflix 转 SRT
- 从 Netflix(
.xml
dfxp 或.vtt
文件)、YouTube 或其他来源获取字幕。 - 将它们转换为
.srt
- 注意: Youtube 上有一个视频教程,涵盖了有关如何使用 Windows 和 Google Chrome 从 Netflix 下载和转换字幕的所有分步说明。
获取字幕:
请随意创建一个拉取请求,为最适合您的每个步骤/方法添加屏幕截图。
来自 Netflix:方法 1
- 您需要以下网络浏览器之一:
- 安装 Tampermonkey,链接如下:
- Chrome 扩展程序
- 火狐插件
- Safari 指南
- 微软 Edge 插件
- 歌剧插件
- 安装 Netflix - Tampermonkey 的字幕下载器脚本。
- 要从 Netflix 下载字幕文件,请在 Netflix 中打开该剧集,然后单击“从该剧集下载字幕”进行下载。
来自 Netflix:方法 2
你需要谷歌浏览器。未在其他网络浏览器上进行测试
- 打开开发工具。这通常通过以下任一方式完成:
- 转到开发工具中的网络选项卡。
- 加载您的电影/剧集。
- 选择您想要的字幕。
- 在 devtools 中按名称排序并查找名称开头带有
?o=
的文件(见下图)。
来自 Netflix:方法 3
该信息是从这篇文章中提取的。
您需要 FireFox 和 AdblockPlus 附加组件。未在其他浏览器上测试
- 启动 Netflix 和您的电影/剧集(流已激活!)
- 启动AdblockPlus,打开可阻止的项目
- 搜索:dfxp (例如 >> #.nflximg.com/#/#/########.dfxp?v=1&e=#########&t=######_ #####&随机=1234567890)
- 在新窗口中打开 dfxp
- 另存为
来自 YouTube
- 安装 youtube-dl(适用于 Windows、Mac 和 Linux)
- 从您喜欢的 YouTube URL 下载订阅内容,例如
youtube-dl --all-subs "https://www.youtube.com/watch?v=VHNfvFOBC0A"
- 字幕应下载到运行命令的同一文件夹中。例如
NameOfTheVideo VHNfvFOBC0A.ca.vtt, NameOfTheVideo VHNfvFOBC0A.tlh.vtt
- 如果您缺少某种语言,请检查它是否确实可用。例如
youtube-dl --list-subs "https://www.youtube.com/watch?v=VHNfvFOBC0A"
将它们转换为 .srt
- 获取 python(在 python 2.7、3.3 和更高版本下测试)。如果您有 mac 或 linux 则可以跳过此步骤
- 克隆此存储库或下载
to_srt.py
- 在终端中运行脚本(在终端的
to_srt.py
文件夹中输入python to_srt.py
)- 将字幕文件复制到
to_srt.py
同一目录中- 或者使用
-i INPUT_PATH
和-o OUTPUT_PATH
作为自定义文件位置
- 输入目录中的所有
.xml
和.vtt
文件都将在输出目录中生成转换后的.srt
文件
- 享受! (如果您喜欢,请为该存储库加注星标;D)
为什么要使用这个存储库?
VLC 播放器无法重现这种 xml 字幕,而且我找不到任何可以在 Linux 或 Mac 中轻松将 xml 文件转换为合适格式(例如 SubRip ( .srt
))的工具。我收到了 WebVTT ( .vtt
) 的请求并做了同样的事情。
待办事项
- 比一些快速而肮脏的正则表达式更强大的文件解析。
- Javascript/网络版本,因此这可以完全通过浏览器完成。
- 真实测试。现在“测试”它的方法是从项目的根目录运行
python to_srt.py -i samples -o samples
并检查.srt
结果(或python3 to_srt.py -i samples -o samples
)。 - 为此创建一个 pip 包。
- 更多屏幕截图,使“获取字幕”部分更容易理解。
笔记:
我绝不鼓励任何形式的非法活动。请了解您当地的法律,并在必要时请求内容所有者(例如 Netflix、YouTube)的书面许可。