m3u8及TS文件下载解密:m3u8文件下载及分析(一)

下载m3u8文件

找到m3u8的网址后,在浏览器中输入该网址,就可以自动下载m3u8文件。
m3u8及TS文件下载解密:m3u8文件下载及分析(一)_第1张图片

用记事本打开都可以看到具体内容

m3u8及TS文件下载解密:m3u8文件下载及分析(一)_第2张图片

M3u8跳转

有的下载的m3u8文件打开是这样的:
m3u8及TS文件下载解密:m3u8文件下载及分析(一)_第3张图片

需要根据其中的内容获得真正的地址,这一段文字在记事本里看不出什么,换一个能够显示换行符的编辑器,如ultraedit,或者notepad++

m3u8及TS文件下载解密:m3u8文件下载及分析(一)_第4张图片

可以看到实际上是分3行的,其中第3行 1000kb/hls/index.m3u8 是真实的m3u8地址。
将原有路径中的m3u8文件名替换成真实的地址。如

http://test.com/81820180915/VR201809631/index.m3u8

就替换成http://test.com/81820180915/VR201809631/1000kb/hls/index.m3u8
这就是最终的m3u8地址,再次下载就可以了。

C#处理跳转的代码

private string GetTrueM3u8(string url)
{
string strHTML = “”,href="";
//label15.Text = “判断是否有映射…”;
WebClient myWebClient = new WebClient();
Stream myStream = myWebClient.OpenRead(url);
StreamReader sr = new StreamReader(myStream, System.Text.Encoding.GetEncoding(“utf-8”));
while (!sr.EndOfStream)
{
strHTML = sr.ReadLine();
if(strHTML.IndexOf(“m3u8”)>-1)
href = strHTML;
}
myStream.Close();

        //将url最后的一部分替换掉
        int lastpostion=url.LastIndexOf("/");
        if (lastpostion > 0 && lastpostion + 1 < url.Length)
             this.cururlpath = url.Substring(0, lastpostion + 1);
        if (!href.Equals("")) 
            href = this.cururlpath + href;
        else href = url;
        //label15.Text = "已获得最终的m3u8地址。";

        lastpostion = href.LastIndexOf("/");  //得到最终地址的路径
        if (lastpostion > 0 && lastpostion + 1 < href.Length)
            this.cururlpath = href.Substring(0, lastpostion + 1);
        return href;
    }

TSmaster工具

TSMatser是一个m3u8及TS文件、CKplayer视频文件下载解密工具。本身在解析网页时,已经能自动解析m3u8文件的二次跳转情况。

csdn 下载:https://download.csdn.net/download/cquptvlry/11262603
百度网盘: https://pan.baidu.com/s/1XGTaS6UvEnzQtna5aoECZA 提取码 it7t

m3u8及TS文件下载解密:m3u8文件下载及分析(一)_第5张图片

你可能感兴趣的:(TSmaster,m3u8,及ts下载解密,TSMaster下载解密,m3u8文件下载)