思源工具箱抖音api解析接口更新

访客3年前黑客工具849
<?php
header('Access-Control-Allow-Origin:*');
header('Content-Type:text/json;charset=utf8');

/**
 * @author 小桃子工作室 by思源工具箱
 */

if(!array_key_exists('url',$_REQUEST) || !$_REQUEST['url']){
	return;
}
$url = @$_REQUEST['url'];
if (!strstr($url,"douyin.com")) {
	die("请输入抖音分享的地址,如:http://v.douyin.com/acM2kP/");
}
preg_match("/http:\/\/v.douyin.com\/\S+/",$url,$res);

function curl($url, $header, $getinfo=false)
{
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_NOBODY, false);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, false);
    curl_setopt($ch, CURLOPT_TIMEOUT, 3600);
    curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
    curl_setopt($ch, CURLOPT_AUTOREFERER, true);
    curl_setopt($ch, CURLOPT_ENCODING, '');
	curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
	if($getinfo){
		curl_exec($ch);
		$data = curl_getinfo($ch,CURLINFO_EFFECTIVE_URL);
	}else{
		$data = curl_exec($ch);
	}
    curl_close($ch);
    return $data;
}

$header = [
	'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',

];

if (!empty(strpos($url,"douyin"))) {
$content = curl($res[0],$header);
preg_match_all("/itemId: \"([0-9]+)\"|dytk: \"(.*)\"/", $content, $res, PREG_SET_ORDER);

if(!$res[0][1] || !$res[1][2]){
	die("数据异常");
}
$itemId = $res[0][1];
$dytk = $res[1][2];

$api = "https://www.iesdouyin.com/web/api/v2/aweme/iteminfo/?item_ids={$itemId}&dytk={$dytk}";

$json = curl($api, $header);

$arr = json_decode($json);

$videoinfo = $arr->item_list[0]->video;

$videourl = curl($videoinfo->play_addr->url_list[0], $header, true);

$data = [
	'title'    => $arr->item_list[0]->desc,
	'cover'      => $videoinfo->cover->url_list[0],
	'videourl' => $videourl, 
];
}
echo json_encode($data,320);

代码为网友分享,思源修改整合到了工具箱。替换api目录下的default/default.php即可,

如需更多工具,请留言。

相关文章

PHP CLI模式开发敷衍笔记

PHP CLI模式开发不需要任何一种Web服务器(包括Apache或MS IIS等),这样,CLI可以运行在各种场合。 有两种方法可以运行PHP CLI脚本。 第一种方法是使用php -f /pat...

PHP 常用的header头部定义汇总(转)

思源简单整理 <?php header('HTTP/1.1 200 OK'); // ok 正常访问 header('HTTP/1.1 404 Not Found'); //通知浏览器 页面不存...

MySQL如何设置自增主键

今天一个朋友问id不递增。发布一下小方法。 在初次使用MySQL数据库的时候,或者习惯了使用Oracle数据库(无自增主键),许多小伙伴不知道该如何给MySQL数据库中的相应表中的字段设置自增主键:...

学习笔记Mysql-相关知识

MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。 MySQL是一个轻量级的数据库,与PHP配合使用效果非常好,...

简单站外跳转页面PHP源码

效果是这样滴~ <meta http-equiv="refresh" content="1;url='<?php echo $url;?>';"> content是跳转时间...

新浪图片外链失效使用远程图片解决方案

这里提供一种临时处理的思路:既然新浪判断了Referer,我们伪造就是了 最后用API方式调用,例如:api.php?url=新浪外链地址 远程图片 <?php/**  * @descri...