python爬虫抖音音浪_【Python爬虫】抖音去水印

在网上看过一些相关教程,有一些解析抖音无水印视频的教程。说是教程,其实大部分都是提供接口,或引流或卖接口。究竟是怎么实现的去水印,就小小地研究了一下。

1.浏览器分析

从抖音短视频中分享一段视频。可以得到

我开始期待夏天和你一起吃西瓜,就像期待冬天和你一起吃火锅,其实我对夏天冬天没有特别喜欢,只是期待和你一起 https://v.douyin.com/cgLgew/ 复制此链接,打开【抖音短视频】,直接观看视频!

我将这段文字中的链接部分复制下来,在浏览器打开。并使用开发者工具调试(F12或鼠标右键)。

可以看到在video标签中存在一个链接。

https://aweme.snssdk.com/aweme/v1/playwm/?s_vid=93f1b41336a8b7a442dbf1c29c6bbc5672cdb2cfaefa126d6cf6ef5532d6940d8202ba55baeffa88df4f525e02e3d9d4a2ac45fb4360d6d7d7735806d8db4a00&line=0

复制该链接在浏览器打开:

发现仍然是带水印的视频,而且页面重定向成了新地址:

http://v26-dy.ixigua.com/6687f6c2701783a302bb486ec3398aad/5e906717/video/tos/cn/tos-cn-ve-15/479476156a58407e939bc3535e4b584a/?a=1128&br=0&bt=2078&cr=0&cs=0&dr=0&ds=3&er=&l=2020041019310601001404601506236F71&lr=aweme&qs=0&rc=ajZvZDhsNHM1dDMzZmkzM0ApNDRpM2k4O2Q6N2Y1ZDs3ZGdyMmYwaGphXjNfLS02LS9zc182LTQuLi00LzMtL2BiLzQ6Yw%3D%3D&vl=&vr=

分析之前的地址:

https://aweme.snssdk.com/aweme/v1/playwm/?s_vid=93f1b41336a8b7a442dbf1c29c6bbc5672cdb2cfaefa126d6cf6ef5532d6940d8202ba55baeffa88df4f525e02e3d9d4a2ac45fb4360d6d7d7735806d8db4a00&line=0

包含playwm 后面的wm是什么意思?(wm就是WaterMark,水印的意思),将playwm改成play,并将请求的User-Agent修改为手机。便得到了无水印版本的视频。手动操作部分结束!

2. 代码实现

Github:

importrequests,re

share= input("请输入你要去水印的抖音短视频链接:")

pat= '(https://v.douyin.com/.*?/)'url= re.compile(pat).findall(share)[0] #正则匹配分享链接

headers ={'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3904.108 Safari/537.36'}

r= requests.get(url, headers=headers)

pat= 'playAddr: "(.*?)",'play= re.compile(pat).findall(r.text)[0].replace("playwm", "play")

headers={'user-agent': 'Android',

}

r= requests.get(play, headers=headers, allow_redirects=False)

playurl= r.headers['location']#自定义文件名保存短视频

name = input("===>正在下载保存视频,请输入视频名称:")

video= requests.get(url=playurl, headers=headers)

with open(name+".mp4", 'wb')as file:

file.write(video.content)

file.close()print("===>视频下载完成!")#完事后退出程序

input("===>press enter key to exit!")

为了方便使用,我打包成了EXE文件

你可能感兴趣的:(python爬虫抖音音浪)