抖音下载短视频去水印方法

抖音现在十分的火热,连玩纱巾的退休阿姨都会时不时发几个视频玩。

抖音很厚道,应用上直接提供了保存视频到本地的按钮,只是下载下来的视频多了点水印。

对于一个努力追求完美的人来说,这个水印很别扭,因此想要把它去掉。

这里就是为有更高追求的抖音人准备的一个去水印的方法。

方法秉承协议分析的一贯手段,从报文着手,介绍具体方法的实现,如果有想练手的朋友,按方法实现即可。

下面介绍如何从抖音获取无水印视频的分析过程,当然,大部分操作需要在PC上使用fiddler进行操作,否则多有不便。

第一步,获取带水印视频的下载链接短地址,从分享里面的复制链接获得:

最终得到的这样的字符串:

里面的”http://v.douyin.com/hD57d8/“就是需要获取的地址。

第二步,使用fiddler,构造报文访问这个地址:

是一个短连接,返回302跳转:

fiddler会自动执行,跳转https访问类似https://www.iesdouyin.com/share/video/xxxx的这个跳转地址,返回响应页面。

第三步,从这个返回的页面内找到关键字:

取出图中的itemId和dytk备用。

第四步,使用上一步获得的itemId和dytk两个值来构造地址https://www.iesdouyin.com/web/api/v2/aweme/iteminfo/?item_ids=xxx&dytk=yyy,同时,构造http头,像这样子:

将会获得一个响应:

里面是json结构,从中提取图上的这个uri值,关键字是video,play_addr,uri。

第五步,使用这个提取的uri构造新的url https://api.amemv.com/aweme/v1/play/?video_id=xxxx uri&line=0&ratio=540p&media_type=4&vr_type=0&test_cdn=None&improve_bitrate=0,同时构造http头,像下面这个样子,修改Vpwp-Raw-Key内的值为上一步提取的uri值:

进行https访问,仍然是302跳转,跳到最终的http视频地址:

fiddler会自动执行,将把视频下载下来,最终的响应就是视频文件mp4内容。

第六步,这是最后一步,将响应视频mp4数据保存,像图中这样:

打开看看,是不是无水印的呢?

手动操作就这样了,自动和手动产生的报文只有下面几个:

整个流程使用Python很好实现,页面的解析也很简单,实现了就是一个简单的去水印工具了。

当然,对抖音的去水印还有其它各种各样的需求。技术其实类似,这里抛砖引玉,后续不排除会展开。

抖音去水印的方法就介绍到这里了,有任何需要可以留言。

posted @ 2019-07-21 10:16  一二一二一  阅读(1897)  评论(0编辑  收藏  举报