有些童鞋可能自己有去水印相关项目,但多数都是用别人发接口,经常失效、收费,难维护!
今天为大家分享一段抖音短视频去水印解析接口的PHP源码,轻松搭建一个属于自己的解析接口,而且是官方的不易和谐!
<!--首页:www.toolait.cn--> <?php $url = @$_GET['url']; if ($url != null) { $loc = get_headers($url, true)["location"]; $b = 'video/'; $c = '/?region'; $id = GetBetween($loc,$b,$c); $arr = json_decode(curl('https://www.iesdouyin.com/web/api/v2/aweme/iteminfo/?item_ids='.$id), true); //var_dump($arr); preg_match('/href="(.*?)">Found/', curl(str_replace('playwm', 'play', $arr['item_list'][0]["video"]["play_addr"]["url_list"][0])), $matches); $videourl = str_replace('&', '&', $matches[1]); $Json = array( 'title' => $arr['item_list'][0]["share_info"]["share_title"], 'cover' => $arr['item_list'][0]['video']["origin_cover"]["url_list"][0], 'url' => $videourl, ); $Json = json_encode($Json,JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE); echo stripslashes($Json); return $Json; } else{ echo '请输入正确的抖音短链接'; } function GetBetween($content,$start,$end) { $r = explode($start, $content); if (isset($r[1])) { $r = explode($end, $r[1]); return $r[0]; } return ''; } function curl($url) { $Header=array( "User-Agent:Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1"); $con=curl_init((string)$url); curl_setopt($con,CURLOPT_HEADER,False); curl_setopt($con,CURLOPT_SSL_VERIFYPEER,False); curl_setopt($con,CURLOPT_RETURNTRANSFER,true); curl_setopt($con,CURLOPT_HTTPHEADER,$Header); curl_setopt($con,CURLOPT_TIMEOUT,5000); $result = curl_exec($con); return $result; } ?>
使用方法:
将上面代码命名为api.php(api字母自定义)上传至自己的服务器任意位置均可!
调用方式:
域名/api.php?url=
其中url= 这里就填短视频链接
示例演示:
https://www.toolait.cn/wp-tools/dyin/api.php?url=
自行在后面添加短视频链接即可
我们这个接口也会一直更新维护,有需求的童鞋可以直接用我们这个接口哟!
如:域名/api.php?url=https://v.douyin.com/xxxxxx/
返回数据:
{ "title": "标题", "cover": "封面", "url": "视频链接" }
纯链接模式:
<?php header("Content-Type: text/html;charset=utf-8");//设置编码 error_reporting (E_ALL & ~E_NOTICE); $url = $_GET['url']; if (empty($_GET['url']) || !isset($_GET['url'])) { echo "网民工具箱 www.toolait.cn"; exit(); }else{ echo getUrl($url); } function getUrl($url){ $ollink = file_get_contents('//toolait.cn/wp-tools/dyin/api.php?url='. $url ); if ($ollink == '') { $links = ['info' => '该视频已经失效,换个视频试试吧!']; return json_encode($links); }else{ $qsyvid = substr($ollink, strpos($ollink, '?')); $qsylink = 'https://aweme.snssdk.com/aweme/v1/play/'. $qsyvid; $tiaozhuan = file_get_contents('//toolait.cn/wp-tools/dyin/api.php?url='.$qsylink); } $links = ['cover'=>$cover,'old'=>$ollink,'new'=>$tiaozhuan]; return $tiaozhuan; } function getWebCode($url){ $curl = curl_init(); $UserAgent = 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; SLCC1; .NET CLR 2.0.50727; .NET CLR 3.0.04506; .NET CLR 3.5.21022; .NET CLR 1.0.3705; .NET CLR 1.1.4322)'; curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_HEADER, 0); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($curl, CURLOPT_ENCODING, ''); curl_setopt($curl, CURLOPT_USERAGENT, $UserAgent); curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1); return curl_exec($curl); // return htmlspecialchars($output); curl_close($curl); } function centerStr($str,$leftStr,$rightStr){ $left = strpos($str, $leftStr); $right = strpos($str,$rightStr,$left); if ($left < 0 || $right < $right) { return false; exit(); } return substr($str, $left + strlen($leftStr),$right-$left-strlen($leftStr)); } function getRealLink($urls,$nm){ return substr(get_headers($urls)[$nm], 9); } ?>