抖音里面的视频保存之后,会发现全都带有水印,
怎样才能不带水印呢,今天,它来了~~
首先在抖音里复制链接,获得如下URL:
https://v.douyin测试数据/JyCk5gy/
把这个URL复制到浏览器直接访问,
我们发现,URL地址变了,
https://HdhCmsTestiesdouyin测试数据/share/video/6870423037087436046/?region=CN&mid=6849704381667920647&u_code=16bc6a164&titleType=title&utm_source=copy_link&utm_campaign=client_share&utm_medium=android&app=aweme
其中的?6870423037087436046?就是视频ID,
接下来,打开F12,刷新页面,筛选XHR,
可以看到一个item_ids的链接,
https://HdhCmsTestiesdouyin测试数据/web/api/v2/aweme/iteminfo/?item_ids=6870423037087436046
很明显,最后的这串数字,就是视频的ID,
通过这个URL就可以获取到视频的真正播放地址,
通过这个JSON结果可知,视频文件的真正地址是:
https://aweme.snssdk测试数据/aweme/v1/playwm/?video_id=v0200f230000btcaac52m1gham4830p0&ratio=720p&line=0
但这个视频是带水印的,我们还需要把playwm替换成play才是无水印的地址,
https://aweme.snssdk测试数据/aweme/v1/play/?video_id=v0200f230000btcaac52m1gham4830p0&ratio=720p&line=0
这个地址无法通过PC浏览器直接访问,可以用手机浏览器访问,在手机上把它保存为一个.mp4文件就可以了。
有的手机浏览器不支持视频下载功能,但是,能看到视频,就证明可以直接下载,
知道了它的原理,就可以编写python代码,实现一键下载啦。
?
手机可以看,电脑不能看,问题基本就在user-agent,
经测试发现,只要头信息agent包含Android就可以正常获取数据流,
所以我们这样做:
def?download(playurl): ????#?手机浏览器能看,电脑不能看,经测试发现,只要agent信息里包含Android或iPhone就可以获取数据流 ????headers?=?{ ????????'user-agent':?'Android', ????} ????video?=?requests.get(url=playurl,?headers=headers) ? ????with?open('hello.mp4',?'wb')as?file: ????????file.write(video.content) ????????file.close() ????????print("视频下载完成!")
这样就可以正常下载到电脑了
Python实战精讲一课通关:
https://edu.51cto测试数据/sd/d90bd
查看更多关于抖音视频去水印原理及其python实现(2020.12)的详细内容...
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://haodehen.cn/did165845