最近下载个电影找不到字幕最後却用迅雷看看匹配上了。再接着试了一下发现迅雷的字幕库还很全的。由于我平时很少用迅雷看看这个视频软件虽然迅雷看看可以保存字幕,但用起来也还是非常不方便便想找一个有没有独立的工具可以下载迅雷字幕库的字幕。
在寻找的过程中发现不但有这种工具,就连算法都有了其基本过程如下:
首先,取视频的一部分内容求sha哈希值具体取内容的算法为:
- 如果文件小于60k(0x000),其文件所有内嫆
- 如果文件大于60k取如下三部分的内容
然后,使用get方法访问其中cid为视频文件的cid值。
这样就能得到所有字幕信息是一个json格式的数据,解析改数据后就可以下载字幕了
也就是说,迅雷的字幕库是和视频内容关联的是不能用视频文件名搜索的,这个和之前射手网的字幕api是非常类似的(其求hash的算法也非常类似)
由于原项目是python些的,没有gui界面使用起来有所不便,便趁国庆有点时间用C#重写了一下用wpf写了一個简易的界面,项目源码也发布在了github上,算法主要如上面描述所示比较简单,需要的朋友可以直接获取