PHP抖音无水印解析视频代码+思路

抖音无水印视频解析接口 抖音无水印视频思路 抖音解析PHP代码 php解析抖音无水印视频

这几天疫情严重,放假在家无所事事,闲着无聊写点代码,今天来说说PHP无水印解析抖音视频

网上的代码银狐自己试了试都是没用的,文末附上本人的代码,可以直接用,文章和代码都是今天(2022/3/13)写的

流程:打开分享链接,获取头,得到真实地址,得到真实地址里面的videoID,通过抖音官方API获取json数据得到查询真实无水印视频地址的网页,Curl无水印网页,返回头部信息,取得抖音无水印视频地址

先来段抖音撩妹祖师爷的视频:https://v.douyin.com/NrRah9w/

这是app里面的分享链接,但是我们在网页中打开,发现是不一样的网址。

先说手机端的,在网页中打开出现的网址是:

https://www.iesdouyin.com/share/video/7074203714344471816/

其中,7074203714344471816,是这部视频的videoid

那么我们怎么获取跳转的地址,PHP代码:

$header = get_headers('https://v.douyin.com/NrRah9w/',1);

$realurl = $header['Location'][1]; //获取真实链接

第一行代码先获取头,第二行获取真实链接,懂得都懂,自己用var_dump看

然后抖音有这么一个接口会返回视频数据,通过videoid来查询:

https://www.iesdouyin.com/web/api/v2/aweme/iteminfo/?item_ids=videoid

如:https://www.iesdouyin.com/web/api/v2/aweme/iteminfo/?item_ids=7074203714344471816

返回一大段json数据过来

重要的数据是:

"url_list":["https://aweme.snssdk.com/aweme/v1/playwm/?video_id=v0200fg10000c8m9t3jc77u6h9celcbg&ratio=720p&line=0"]}

"vid":"v0200fg10000c8m9t3jc77u6h9celcbg"

我们取json就是把他转换成数组,然后取vid,我们可以看到,访问url_list就是出现的是真实无水印的视频链接,那么我们通过vid就可以查询到真实无水印的视频地址

vid位置:

$getvid = json_decode('https://www.iesdouyin.com/web/api/v2/aweme/iteminfo/?item_ids=7074203714344471816', true);

$dy_vid= $getvid['item_list'][0]['video']['vid'];//得到vid

我们用curl去请求:https://aweme.snssdk.com/aweme/v1/playwm/?video_id=v0200fg10000c8m9t3jc77u6h9celcbg&ratio=720p&line=0

请求这个网页会302跳转到真实视频地址。

代码:《PHP CURL 返回请求网页头信息》

真实链接:$headers['url']

PC网页版的抖音和APP抖音的链接不一样,PC端更为简洁,银狐的代码里面有这两端的实现方法,各位自己学习和优化代码。

例子:

https://www.ityinhu.com/api/douyin/api.php?url=https://v.douyin.com/NrRah9w/

如果打开上面的网址发现没有内容了,那么方法失效了。

源码打包下载地址:https://www.ityinhu.com/646.html

你可能感兴趣的:(PHP抖音无水印解析视频代码+思路)