使用python代码爬取抖音无水印视频并下载–Python篇

佚名 次浏览

摘要:昨天我发了使用php解析下载抖音无水印视频的教程,今天我来教大家如何用python爬取下载抖音的无水印视频话不多说开始!因为在昨天的文章中有关于寻找抖音的json接口,这边我就不再提了,有兴趣的可以去看我昨天发的,链接如下:我们前面的跳过,直接开始代码部分!步骤一:首先请求302重定向的地址如我们复制的抖音视频

昨天我发了使用php解析下载抖音无水印视频的教程,今天我来教大家如何用python 爬取下载抖音的无水印视频


话不多说 开始!因为在昨天的文章中有关于寻找抖音的json接口,这边我就不再提了,有兴趣的可以去看我昨天发的,链接如下:

zhuanlan.zhihu.com/p/50

我们前面的跳过,直接开始代码部分!


步骤一:首先请求302重定向的地址

如我们复制的抖音视频分享链接都是下面这样的

4.15 usE:/ 化妆简直邪术 v.douyin.com/8NTarjq/ 复zhi佌链接,答汧Dou音搜索,直接观kan视频!

我们需要用requests请求这段文本中的链接 v.douyin.com/8NTarjq/

html = requests.get(t[0], allow_redirects=False)      
url2=html.headers['Location']# 获取跳转地址


因为链接会进行302重定向跳转,所以需要在请求的时候加个allow_redirects=False参数,它的返回值是下面这样的

https://www.iesdouyin.com/share/video/6997004782640598310/?region=CN&mid=后面还有一堆参数,我们可以不管它

这条链接是该视频的网页地址,我们需要的就是video/()/?region中间的这串数字6997004782640598310

将这串数字拼接在抖音官方的json接口上

ur=f'https://www.iesdouyin.com/web/api/v2/aweme/iteminfo/?item_ids={item_ids[0]}'


其中item_ids[0]就等于我们获取的6997004782640598310,也就是网页视频id,拼接后连接如下

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


步骤二:请求json链接

上面我们获取拼接了视频的json链接,大家写代码的时候可以把链接复制到浏览器打开查看具体内容

部分内容如图

我们还是用request请求链接,通过浏览器看json内容,获取我们需要的相关值

html2 = requests.get(ur,headers=headers) #请求json链接
title=html2.json()['item_list'][0]['desc']  #抖音视频的文案内容
video_id=html2.json()['item_list'][0]['video']['play_addr']['uri']  #视频的uri,也就是video_id
video_url=f'https://aweme.snssdk.com/aweme/v1/play/?video_id={video_id}&ratio=720p&line=0'


步骤三:对链接进行拼接

因为所有视频的地址只有video_id不一样,所以我们主要的就是获取json返回数据中的video_id,然后和

https://aweme.snssdk.com/aweme/v1/play/?video_id=

拼接在一起,就是抖音无水印视频的地址了,当我们访问的时候,它还会重定向跳转到视频的真实地址,我们访问这段链接就能下载到无水印视频。

https://aweme.snssdk.com/aweme/v1/play/?video_id=v0d00fg10000c4d5klrc77u1kmdccc6g

例:上面就是我获取这个例子的无水印视频,大家可复制到浏览器访问看是否是无水印的,结果如下图

可以看出,视频是无水印的并且可以下载,而且我试了一下,成功下载到本地!


附上我做好的抖音无水印视频解析接口供大家使用,接口地址:

https://www.hmily.vip/api/dy/?url=


在接口地址后面加上你要下载的抖音视频链接就行了,返回的是json类型数据,包含无水印视频下载链接,mp3背景音乐下载链接和视频封面等等信息。



源代码地址:Python代码爬取抖音无水印视频源码

随机内容

平台注册入口