虎牙直播解析源码(参考)
<?php echo json_encode(HuYa::parse($url)); class HuYa { public static function parse($url) { $vid = explode(".html", basename($url))[0]; return self::get_video_url($vid); } public static function get_video_url($vid) { $api = "http://v-api-play.huya.com/?r=vhuyaplay%2Fvideo&vid={$vid}"; $content = self::curl($api); $data = json_decode($content,true); if($data["code"]==1){ $result = $data["result"]; $cover = $result["cover"]; $videoinfo["poster"] = $cover; $items = $result["items"]; foreach ($items as $key => $value) { $height = $value["height"]; $vurl = $value["transcode"]["urls"][0]; switch ($height) { case "360":$def="标清";break; case "540":$def="高清";break; case "720":$def="超清";break; case "1080":$def="超高清";break; } if (GlobalBase::is_ipad()) { if($height=='720'){ $videoinfo['code'] = 200; $videoinfo["data"]["url"]= $vurl; break; } }else{ $video[0] = $vurl; $video[1] = "video/mp4"; $video[2] = $def; $video[3] = $height!='720' ? 0 : 10; $videoinfo['code'] = 200; $videoinfo["data"]["video"][$key] = $video; $videoinfo["data"]["flashplayer"] = true; } } return $videoinfo; } } public static function curl($url) { $params["ua"] = "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.84 Safari/537.36"; return GlobalBase::curl($url,$params); } } ?>