PHP解析mgtv視頻的例子
我們都知道,芒果TV是一個很流行的在線視頻平臺,它為我們提供了很多優秀的電影和電視劇。但是,當我們想要下載這些視頻時,我們遇到了問題,因為mgtv視頻被保護,不能直接下載。在這種情況下,我們可以使用PHP解析mgtv視頻。
首先,需要找到mgtv視頻的URL。 這可以通過各種方式完成。 例如,我們可以從芒果TV網站上復制URL,或者通過使用ffmpeg命令行工具從mgtv網站中提取FLV URL。 在此示例中,我們將使用一個已知的mgtv視頻URL來說明。
<?php
$url = 'http : //www.mgtv.com/b/308770/6024471.html';
function get_mgtv_video($url)
{
$result = '';
$html = file_get_contents($url);
$pattern = '/vid:"(.*?)"/';
preg_match($pattern,$html,$matches);
if($matches){
$vid = $matches[1];
$url = 'http : //pcweb.api.mgtv.com/player/video?video_id='.$vid.'&format=1';
$json = file_get_contents($url);
$arry = json_decode($json,true);
if($arry['code'] == 200){
$result = $arry['data']['stream'][0]['url'];
}
}
return $result;
}
echo get_mgtv_video($url);
代碼解釋如下:
首先我們創建一個名為get_mgtv_video的函數,這個函數接收一個url參數。我們通過調用這個函數來獲取mgtv視頻URL。
其次,我們使用file_get_contents函數獲取mgtv頁面的HTML代碼。然后我們用正則表達式從HTML中匹配出vid:
$html = file_get_contents($url);
$pattern = '/vid:"(.*?)"/';
preg_match($pattern,$html,$matches);
if($matches){
$vid = $matches[1];
//...
}
一旦我們得到了vid,我們可以通過調用API來獲取mgtv視頻的JSON數據:
$url = 'http : //pcweb.api.mgtv.com/player/video?video_id='.$vid.'&format=1';
$json = file_get_contents($url);
$arry = json_decode($json,true);
在這個JSON數據中,我們可以找到視頻流數組,包括FLV格式等。在這種情況下,我們只關心第一個流的URL:
$result = $arry['data']['stream'][0]['url'];
最后,我們返回了mgtv視頻的URL:
return $result;
現在,我們可以通過調用get_mgtv_video函數獲取mgtv視頻的URL:
echo get_mgtv_video($url);
總之, PHP解析mgtv視頻是一個非常有用的技術,它可以幫助我們下載mgtv視頻以離線觀看。你可以自己嘗試一下這個例子,并應用到你自己的項目中。
上一篇HTML 在線拾色器
下一篇python的程序注釋