同事要下载一个微信上发的视频,在手机上可以打开观看视频,但是把链接发到电脑上,却无法播放视频。用审查元素等方法也没有找到有视频播放的链接。今天有空就折腾了下,下面记录下我操作的过程:
1,通过fiddler抓手机数据包,可参考教程:用Fiddler对手机抓包教程
通过抓包,果然抓到了视频播放的一个数据包,发现视频文件是TS后缀的文件,在这个数据包的上面,有一个数据包,可以发现这个有46个这样的TS文件,前面的网址都一样,只有后面的数字编号不同,比如第一个是:*****1.ts,第二个就是*****2.ts,以此类推。
于是就用迅雷的批量下载功能,把所有的这些文件一次性下载下来,当然这里还涉及到迅雷的批量下载设置方法,这个迅雷的批量下载功能上有提示,按照提示操作,就能下载下来所有的ts视频文件。
下载下来以后,还有一个问题就是,要怎么才能把这46个ts文件合并成一个文件呢?通过百度,找到了方法。
2,合并TS文件:
下面是百度上找到的方法,测试可行:
在CMD下,输入命令行:“copy /b F:\f\*.ts E:\f\new.ts”
执行该命令后,F:\f目录下的全部TS文件就被合并成一个new.ts文件了(你原来的那堆文件仍然存在)。
这里使用copy命令的文件合并功能进行ts文件的合并,copy后面的 /b 参数表示把文件按二进制格式来合并,如果不加这个参数,则会把目标当成文本文件来合并,并在文件内添加不必要的标记,这会导致播放出错,所以必须加 /b 参数。
3,测试以后,发现果然合并了,但是又来了新问题,发现合并的时候,并没有按照顺序来合并,比如合并了1.ts这个文件以后,应该合并2.ts这个文件,但是程序并没有这么执行。
通过百度,发现必须对这些ts后缀的文件前面的名字按照一定的顺序来命名,才能按顺序合并。比如:
这样就能合并了,但是手动改起来太麻烦了,于是用易语言写了个批量改文件名的程序。写这个程序不完全是为了这个事情,是因为有时候也遇到了要批量改文件名字的时候,手动改太费事了,用程序就是一瞬间的事情。
改好文件名以后,再用第2步的方法,果然按照顺序合并TS文件成功。值得指出的是,我合并成了mp4格式的,但没有任何错误,播放器能正常播放。
标签: fiddler