正文

想下载无水印视频当然要找到无水印的视频的地址 于是在抖音的视频右下方点击分享 会弹出很多的分享的方式 这里我们选择复制链接 这样就会得到这个

这段文字里的url地址复制手机浏览器打开会出现原视频 只是也会带水印的,但如果要是复制到电脑打开 就会惊喜的发现水印不见了~

所以使用桌面浏览器的ua访问这个url地址 得到的视频是无水印的,现在只要找到视频的下载地址 即可get到无水印的文件

访问视频地址https://v.douyin.com/dTJPrsy/

打开Network 清除所有已加载请求 然后点击视频播放按钮

发现一个请求加载了2.9mb的资源,点开它 复制它的url地址打开
搞定 的确是无水印的视频
这时就要开始研究这个无水印的视频的url地址是什么时候加载的,找了大概3分钟 发现竟然就在第一个请求就加载了无水印视频的url地址
当然这里是被编码的

复制该条请求的url地址, 打开pycharm 用requests库请求然后解码输出一下,看看无水印视频的url地址在不在这里

不知道为什么,请求这个地址有时候会被重定向,但多试几次还是能get到的 这里可以在异常的时候,捕获异常 然后递归回去重新请求

果然, 轻松找到,无水印视频的地址https://www.douyin.com/aweme/v1/play/?video_id=v0d00fg10000c5e5igjc77ufqmb21cr0&line=0&file_id=30f121c6a1864953ae1ea98bda9473b3&sign=7d363a7bd7fb3cbd546516eea7420ff8&is_play_url=1&source=PackSourceEnum_AWEME_DETAIL&aid=6383

所以现在只要把之前的流程串起来,就可以完成使用python下载无水印视频的需求

当我着手开始写代码我才发现,谷歌浏览器抓包工具第一个请求不是我输入进去的url


这时才发现该地址被重定向了

那勾选保留日志再请求一次
果然被重定向了 而且还是两次

知道原因就好办了,打开pytharm

轻松得到第一次重定向后的地址

如法炮制得到第二次重定向后的地址,比对了一下 就是那个包含了无水印url的url

所以只要用正则提取出二次重定向后的url地址中的无水印视频的url再请求这个地址 就可以得到无水印视频

完整代码

import requests
import re
from urllib.parse import unquote
import time
import osclass GetDouYingVideo(object):def __init__(self, url):self.url = urlself.headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.81 Safari/537.32'}self.counter = 0self.get_video_id()def get_video_id(self):if self.counter == 0:print('重定向作品地址ing 请稍后...')response0 = requests.get(self.url, headers=self.headers, allow_redirects=False)response1 = requests.get(re.search(r'\"(.+)\"', response0.text).group(1), headers=self.headers,allow_redirects=False)response2 = requests.get(re.search(r'\"(.+)\"', response1.text).group(1), headers=self.headers)# print(unquote(response2.text))if self.counter != 0:print(f'获取视频文件地址失败 正在{str(self.counter)}次重试')else:print('获取视频地址ing 请稍后...')try:# 因为请求这个地址有可能会被再次重定向 没办法 只得在失败后递归回来 再次请求result = re.search(r'"playApi":"//(.+)","bitRateList"', unquote(response2.text)).group(1)response3 = requests.get('https://' + result, headers=self.headers)name = re.search('<head><title data-react-helmet="true">(.*)</title>', response2.text).group(1)with open(name + '.mp4', 'wb') as f:f.write(response3.content)except AttributeError:self.counter += 1time.sleep(3)self.get_video_id()  if __name__ == '__main__':GetDouYingVideo(input('请输入要下载的视频地址'))print('下载无水印视频成功!')os.system('pause')

写博客的经验很少,有错误希望多多指正。 有问题也欢迎留言看到 看到一定会回复

抖~~音 无水印video 下载相关推荐

  1. Python 抖音无水印视频下载

    引言 上篇文章讲到抖音首页视频的爬取和下载,于是我想到能不能下载特定的视频.网上搜索一番,发现有网站提供抖音无水印视频的下载,但是试了几个,发现下载下来都还是有水印的视频.上篇文章已经实现了首页无水印 ...

  2. 【python小白】抖音无水印视频下载小工具(windows)

    无水印视频的方法大家都已经知道了,我很早之前也写了一个脚本.最近学习了一下下pyside2,所以我用python写了一个小工具. 运行图: from PySide2.QtWidgets import ...

  3. python下载b站视频_【python】抖音无水印视频下载和b站视频下载

    本帖最后由 370125229 于 2020-3-27 17:38 编辑 萌新一枚,拿这个练练手 用python写的,部分视频可能还是会有水印 抖音 蓝奏: https://www.lanzous.c ...

  4. 抖音无水印视频下载方法

  5. 用 Python 下载抖音无水印视频

    说起抖音,大家或多或少应该都接触过,如果大家在上面下载过视频,一定知道我们下载的视频是带有水印的,那么我们有什么方式下载不带水印的视频呢?其实用 Python 就可以做到,下面我们来看一下. 很多人学 ...

  6. python无水印下载视频_用 Python 下载抖音无水印视频

    说起抖音,大家或多或少应该都接触过,如果大家在上面下载过视频,一定知道我们下载的视频是带有水印的,那么我们有什么方式下载不带水印的视频呢?其实用 Python 就可以做到,下面我们来看一下. 首先,我 ...

  7. 抖音上的python课程_用 Python 下载抖音无水印视频

    说起抖音,大家或多或少应该都接触过,如果大家在上面下载过视频,一定知道我们下载的视频是带有水印的,那么我们有什么方式下载不带水印的视频呢?其实用 Python 就可以做到,下面我们来看一下. 首先,我 ...

  8. 用Python下载抖音无水印视频!

    不知不觉距离小F最开始写的一篇抖音文章,时间也过了一年. 用Python全自动下载抖音视频! 上面这一篇阅读量是所有文章中阅读量最高的,当然还有另外两篇相关的. 用Python生成抖音字符视频! 用数 ...

  9. python实现抖音无水印下载,从手动到脚本实现 2020

    工具下载链接:https://www.lanzous.com/ia4vgfg 视频创作不易,希望各位小伙伴尊重他人的作品哦 -------------------------------------- ...

最新文章

  1. 鸿蒙系统能内测吗,鸿蒙系统内测用户:使用体验已经超越ios
  2. 阅读开源源码的正确姿势建议
  3. Quantitative Researcher Summer Internship (for Overseas Schools)
  4. php 赋值 递增,PHP 基础(赋值及函数)
  5. 使用MapReduce将HDFS数据导入Mysql
  6. 3制造数据集_基于MBD的产品设计制造技术研究
  7. joomla \libraries\joomla\session\session.php 反序列化截断畸形字符串导致对象注入漏洞...
  8. Python组合数据类型:字典dictionary
  9. 人工智能及其体系结构_一些复制体系结构错误及其解决方案
  10. miui游戏驱动程序偏好设置_MIUI 11 期待吗?MIUI 10这几个小设置,你都了解吗?...
  11. matlab 参数辨识,Matlab系统辨识尝试之详细过程1
  12. 非科班无实习如何入职腾讯?后台开发岗个人校招学习路线分享!
  13. 五子棋java毕业设计论文_Java五子棋毕业设计论文
  14. 第三阶段应用层——1.7 数码相册—电子书(3)—轮询方式支持多输入
  15. ASP.NET压力测试
  16. 王二的经济学故事读书笔记
  17. Proof of Stake FAQ
  18. git 将本地master分支代码提到远程develop分支
  19. 【SQL Server】统计表记录数
  20. Python:Opencv开发手册

热门文章

  1. 热图6:系列终章之“奇形怪状”的热图
  2. OpenCV学习笔记11_Mask操作与图像叠加
  3. 非广州户籍可以报考广州公务员么_看看官方怎么说
  4. Best regards缩写是什么
  5. ES analyzer和search_analyzer的比较
  6. 国光流量计算机ppt,常见问题
  7. 什么是随机数?什么是随机数种子?
  8. 美光股票现在真的便宜吗?
  9. Autodesk Inventor Publisher 2013安装破解
  10. Eu3 地图查看器 V1.7(2012.2.5更新),支持 CK2、SGK、Vic2:AHD、HOI3:FTM