赞
踩
M3U8的原理我这里就不再累赘了,我们可以用PHP的CURL方法模拟访客获取到M3U8,然后继续往下解码出TS文件,然后传给DB,CK之类播放器播放
一份源码如下:
笨牛网原创的噢
header("ACCESS-CONTROL-ALLOW-ORIGIN:*");
$action = $_GET['action'];
function getcurl($url){
$user_agent = "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0)";
$ch = curl_init();
//curl_setopt ($ch, CURLOPT_PROXY, $proxy);
curl_setopt ($ch, CURLOPT_URL, $url);//设置要访问的IP
curl_setopt ($ch, CURLOPT_USERAGENT, $user_agent);//模拟用户使用的浏览器
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1 ); // 使用自动跳转
curl_setopt ($ch, CURLOPT_TIMEOUT, 60); //设置超时时间
curl_setopt ($ch, CURLOPT_AUTOREFERER, 1 ); // 自动设置Referer
//curl_setopt ($ch, CURLOPT_COOKIEJAR, 'c:\cookie.txt');
curl_setopt ($ch, CURLOPT_HEADER,0); //显示返回的HEAD区域的内容
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt ($ch, CURLOPT_TIMEOUT, 30);
$result = curl_exec($ch);
curl_close($ch);
return $result;
}
if(!$action){
$url='https://new.jsyunbf.com/20180727/QwSTlb89/index.m3u8';
$m3u8 =getcurl($url);
preg_match_all('#/[^\s]*#i', $m3u8, $match);
echo preg_replace('#/[^\s]*#i','https://test2.bnxb.com/get.php?action=https://new.jsyunbf.com$0',$m3u8);
}
else{
$url2= $action;
$m3u8 =getcurl($url2);
//print_r($m3u8);
echo preg_replace('#/[^\s]*#i','https://new.jsyunbf.com$0',$m3u8);
}
?>
播放方法,就是找个播放器
然后https://www.bnxb.com/dplayer.html?url=https://test2.bnxb.com/get.php
类似方法
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。