美文网首页
获取yy手机端直播m3u8地址#附带解决苹果浏览器和微信播放视频

获取yy手机端直播m3u8地址#附带解决苹果浏览器和微信播放视频

作者: 四季变幻 | 来源:发表于2018-08-21 14:42 被阅读64次

    忘了之前是怎么获取的了 貌似是用PC浏览器切换到手机模式截取的 但是目前PC浏览器播放不了视频了 也就获取不到视频实际地址 还有个貌似可行方案有点复杂 借助火狐浏览器PC端调试手机火狐浏览器的方法截取 莫非之前就是这样做的?

    以下给代码:

    $channel = $cfg['config']['phonefp'];//YY频道号 如:22490604/22490604

    $url = "http://interface.yy.com/hls/get/0/{$channel}?appid=0&excid=700&type=m3u8&isHttps=0&callback=jsonp1";

    //echo $url;exit;

    //exit($url);

    $ch = curl_init(); //初始化curl

    curl_setopt($ch, CURLOPT_URL, $url); //设置请求链接

    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // 将curl_exec()获取的信息以文件流的形式返回,而不是直接输出

    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); //使用自动跳转

    curl_setopt($ch, CURLOPT_MAXREDIRS, 15); //指定最多的HTTP重定向的数量,这个选项是和CURLOPT_FOLLOWLOCATION一起使用的。

    curl_setopt($ch, CURLOPT_HEADER, 0); // 如果你想把一个头包含在输出中,设置这个选项为一个非零值

    curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (iPhone; CPU iPhone OS 9_1 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13B143 Safari/601.1"); //模拟用户使用的浏览器

    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5); //在发起连接前等待的时间,如果设置为0,则无限等待

    curl_setopt($ch, CURLOPT_TIMEOUT, 30); //设置超时限制防止死循环

    curl_setopt($ch, CURLOPT_REFERER, 'http://wap.yy.com');

    $buffer = curl_exec($ch); //执行一个curl会话

    curl_close($ch); // 关闭句柄

    $buffer = trim(str_replace('jsonp1', '', $buffer), '()');

    //print_r($buffer);exit;

    $buffer = json_decode($buffer, TRUE);

    $video_html = '<video  src="'.$buffer['hls'].'"  controls="" x5-playsinline="" playsinline="" webkit-playsinline="" poster="" preload="auto" width="100%" height="100%"></video>';

    相关文章

      网友评论

          本文标题:获取yy手机端直播m3u8地址#附带解决苹果浏览器和微信播放视频

          本文链接:https://www.haomeiwen.com/subject/wwfjiftx.html