倪海厦《天纪》《人纪》300万字字幕全集下载,如此丝滑,建议收藏
引言
最近,我意外地发现了一个非常实用的技能——能够将B站上的视频字幕批量下载。以“天纪”这部作品为例,我将详细演示如何操作。
先上成果
- 《天纪》全24集字幕
- 《人纪》全五经字幕
《结集岁月》回复【天纪】【人纪】获取
结集岁月
教程:搜索与下载字幕
打开B站,输入关键词“天纪”进行搜索。在搜索结果页面,我们可以通过播放量排序,快速找到热门视频。注意,并非所有视频都配有字幕,我们需要找到那些有字幕的视频。
上图的第一个视频是没有字幕的,第二个视频有字幕。那么我们点击第二个视频进入播放页面。在视频左边,有一个按钮,是一个浏览器插件,能自动提取B站视频的相关信息,点击该按钮,出现一个“下载视频”的选项。点击它,弹出一个下载设置窗口。
设置下载选项
在弹出来的页面,我们选择“多P”模式,全选-24集视频。在格式选项中,我们选择“仅音频”,其他设置保持默认。字幕格式有两种选择:ASS和JSON。为了便于后续的数据处理,我们选择ASS格式。
设置完毕后,点击“开始下载”。程序会自动将24集视频的字幕压缩成一个压缩包进行下载。下载完成后,解压这个压缩包,就可以看到24个单独的字幕文件了。
合并字幕文件
为了避免打开24个文件逐个进行处理,我们需要将这些字幕文件全部整合到一起,形成一个包含所有文件内容的大文件——full.ass。这里使用Java程序来完成这部分的操作。
import java.io.*;
public class SumFile {
public static void main(String[] args) throws IOException {
//定义输出目录
// 需要特别注意的是:输入路径和输出路径不要放在同个文件夹,否则会造成循环读取写入,导致 FileOut 无限大。
String FileOut="F:\\GoogleDownload\\TCM\\full.ass";
BufferedWriter bw=new BufferedWriter(new FileWriter(FileOut));
//读取目录下的每个文件或者文件夹,并读取文件的内容写到目标文字中去
File[] list = new File("F:\\GoogleDownload\\TCM\\TEST").listFiles();
int fileCount = 0;
int folderConut= 0;
for(File file : list)
{
if(file.isFile())
{
fileCount++;
BufferedReader br = new BufferedReader(new FileReader(file));
String line;
while((line=br.readLine())!=null) {
bw.write(line);
bw.newLine();
}
br.close();
}else {
folderConut++;
}
}
bw.close();
System.out.println("输入目录下文件个数为"+fileCount);
System.out.println("输入目录下文件夹个数为"+folderConut);
}
}
将这24个字幕文件复制到一个纯英文路径的文件夹中。然后修改Java程序,填写24个文件的路径作为输入路径,同时设置好输出路径。运行程序,自动读取文件,合并成ASS字幕文件。
输入路径:
F:\GoogleDownload\TCM\TEST
输出路径和文件名:
F:\GoogleDownload\TCM\full.ass
编辑与整理字幕
现在,我们得到了一个包含24集字幕的大文件 full.ass。为了进一步处理,我们可以使用文本编辑器或专门的字幕编辑软件,利用正则表达式来删除不需要的部分。
这里我们使用notepad++,Ctrl+H进行替换,选择正则表达式的模式。统一保留每一集的标题,替换时间标记为逗号,把所有行替换为一行,并进行换行处理。
保存处理后的字幕
将处理后的字幕文件保存为一个md文档。用Typore打开,可以看到,我们得到了一个整合了24集字幕的文档,格式统一,内容清晰。
结语
这项技能不仅可以帮助我们更好地整理和查看视频字幕,还可以为视频字幕的翻译、校对等工作提供便利。希望这个小技巧能对大家有所帮助。感谢你的阅读!
本文由mdnice多平台发布