PHP某音无水印解析源码

[复制链接]
查看34 | 回复0 | 7 天前 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
  1. <?php
  2. header("Content-Type: text/html;charset=utf-8");
  3.     if(isset($_GET["url"])){
  4.         //设置移动端请求头
  5.         $hdrs = array(
  6.             'http' =>array('header' =>
  7.              "Referer: https://v.douyin.com/" .
  8.              "User-Agent: Mozilla/5.0 (Linux; Android 8.0.0; Pixel 2 XL Build/OPD1.170816.004) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Mobile Safari/537.36\r\n"
  9.             ),
  10.         );
  11.         //设置请求头
  12.         $context = stream_context_create($hdrs);
  13.         //通过请求获得该视频的id
  14.         file_get_contents($_GET["url"],0,$context);
  15.         $id=$http_response_header[6];
  16.         $id=explode("video/",$id);
  17.         $id=explode("/?",$id[1]);
  18.         $id=$id[0];
  19.         //通过接口获得视频的详细内容
  20.         $url="https://www.iesdouyin.com/web/api/v2/aweme/iteminfo/?item_ids=".$id;
  21.         $jsonData=file_get_contents($url,0,$context);
  22.         $jsonData=json_decode($jsonData);
  23.         //获取到视频有水印的播放地址
  24.         $url=$jsonData->item_list[0]->video->play_addr->url_list[0];
  25.         //获取到视频无水印的播放地址
  26.         $url=str_replace("playwm","play",$url);
  27.         //获取真实的视频url
  28.         file_get_contents($url,0,$context);
  29.         for($i=0;$i<sizeof($http_response_header);$i++){
  30.             $url=$http_response_header[$i];
  31.             if(substr($url,0,8)=="location"){
  32.                 $url=$http_response_header[$i];
  33.             break;
  34.             }
  35.         }

  36.         $url=str_replace("location: ","",$url);
  37.         echo $url;
  38.     }
复制代码


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

灌水成绩
394
主题
398
帖子
1482
积分
等级头衔
积分成就
  • 威望: 0
  • 贡献: 1084
  • 金钱: 0
  • 违规:
  • 在线时间:145 小时
  • 注册时间:2020-2-11
  • 最后登录:2020-8-5
个人勋章

最佳新人活跃会员热心会员突出贡献优秀版主论坛元老精贴王灌水之王荣誉管理

联系方式