java 解析m3u8的实例_M3U8在线视频文件下载合成MP4视频(自己想看电影)

朋友推荐了一个比较隐蔽的盗版电影观看网站,网速特别慢观看不爽,就想是不是可以下载下来看,于是就写了这个小工具

首先,你要有能力在网页里面找到这个M3U8的索引文件,相信对于一个开发人员这个应该很容易,通过浏览器F12找到了这个索引文件,如下,我只截取了一部分,这个文件简单讲一下就是把一个视频切分成了好多小片段,而这个文件就是他们的目录文件,找到这个就容易了,接下来,把里面的每个视频片段下载下来合成就可以了。

第一步,下载索引文件

public static String getIndexFile(String urlpath){

try{

URL url = new URL(urlpath);

//下在资源

BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream(),"UTF-8"));

String content = "" ;

String line;

while ((line = in.readLine()) != null) {

content += line + "\n";

}

in.close();

System.out.println(content);

return content;

}catch (Exception e){

e.printStackTrace();

}

return null;

}

#EXTM3U

#EXT-X-VERSION:3

#EXT-X-TARGETDURATION:8

#EXT-X-MEDIA-SEQUENCE:0

#EXTINF:4.971633,

ba1620338f71656.ts

#EXTINF:3.336667,

ba1620338f71657.ts

#EXTINF:3.336667,

ba1620338f71658.ts

#EXTINF:3.336667,

ba1620338f71659.ts

#EXTINF:3.336667,

ba1620338f71660.ts

#EXTINF:0.266933,

ba1620338f71661.ts

#EXT-X-ENDLIST

第二步,解析索引文件

public static List analysisIndex(String content){

Pattern pattern = Pattern.compile(".*ts");

Matcher ma = pattern.matcher(content);

List list = new ArrayList();

while(ma.find()){

String s = ma.group();

list.add(s);

System.out.println(s);

}

return list;

}

解析的数据结果,把索引中的ts部分解析出来,方法很多

ba1620338f7035.ts

ba1620338f7036.ts

ba1620338f7037.ts

ba1620338f7038.ts

ba1620338f7039.ts

ba1620338f70

你可能感兴趣的:(java,解析m3u8的实例)