PHP的CURL方法模擬訪客獲取到M3U8,然后繼續往下解碼出TS文件,然后傳給DB,CK之類播放器播放
一份源碼如下:
<?phpheader("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.vevb.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);}?>
新聞熱點
疑難解答