python tkinter实现下载进度条及抖音视频去水印原理


Posted in Python onFebruary 07, 2021

tkinter下载进度条

利用python爬取网站数据进行下载时,显示下载进度

# 设置下载进度条
tk.Label(window, text='下载进度:').place(x=40, y=80)
canvas = tk.Canvas(window, width=600, height=16, bg="white")
canvas.place(x=20, y=90)
# 下载按钮函数
def usr_download():
  response = session.get(url_str, headers=headers2, cookies=cookies_xxx, verify=False, stream=True) # stream=True表示请求成功后并不会立即开始下载,而是在调用iter_content方法之后才会开始下载
  chunk_size = 40960 # 设置每次下载的块大小
  content_size = int(m4a.headers['content-length']) # 从返回的response的headers中获取文件大小
  # 填充进度条
  fill_line = canvas.create_rectangle(1.5, 1.5, 0, 23, width=0, fill="green")
  raise_data = 600 / (content_size/chunk_size)  # 增量大小,600为进度条的长度
 
  # 将下载的数据写入文件
  with open(title + '.m4a', 'wb') as f:
     n = 0
     for data in response.iter_content(chunk_size=chunk_size): # 在循环读取文件时,刷新进度条 
       f.write(data)
       n = n + raise_data  
       canvas.coords(fill_line, (0, 0, n, 60))
       window.update()
 
# 清空进度条
def clean_progressbar():
  # 清空进度条
  fill_line = canvas.create_rectangle(1.5, 1.5, 0, 23, width=0, fill="white")
  x = 500 # 未知变量,可更改
  n = 600 / x # 465是矩形填充满的次数
 
  for t in range(x):
    n = n + 600 / x
    # 以矩形的长度作为变量值更新
    canvas.coords(fill_line, (0, 0, n, 60))
    window.update()
 
# 下载按钮
btn_download = tk.Button(window, text='开始下载', command=usr_download)
btn_download.place(x=600, y=28)

效果图:

python tkinter实现下载进度条及抖音视频去水印原理

抖音去水印

1.打开抖音链接,获取下图的这个item_id

python tkinter实现下载进度条及抖音视频去水印原理

2.之后使用这个接口请求就ok了

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

3.把   playwm 改成 play

python tkinter实现下载进度条及抖音视频去水印原理

以上就是python tkinter实现下载进度条及抖音视频去水印原理的详细内容,更多关于python 下载进度条及抖音视频去水印的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
python实现从一组颜色中找出与给定颜色最接近颜色的方法
Mar 19 Python
编写Python的web框架中的Model的教程
Apr 29 Python
将Emacs打造成强大的Python代码编辑工具
Nov 20 Python
python 表达式和语句及for、while循环练习实例
Jul 07 Python
python实现求最长回文子串长度
Jan 22 Python
Python中print和return的作用及区别解析
May 05 Python
python 中的列表生成式、生成器表达式、模块导入
Jun 19 Python
Python面向对象之私有属性和私有方法应用案例分析
Dec 31 Python
双向RNN:bidirectional_dynamic_rnn()函数的使用详解
Jan 20 Python
基于python3.7利用Motor来异步读写Mongodb提高效率(推荐)
Apr 29 Python
Django中ORM找出内容不为空的数据实例
May 20 Python
使用opencv中匹配点对的坐标提取方式
Jun 04 Python
python gui开发——制作抖音无水印视频下载工具(附源码)
Feb 07 #Python
Python中全局变量和局部变量的理解与区别
Feb 07 #Python
Python抖音快手代码舞(字符舞)的实现方法
Feb 07 #Python
Python图像处理之膨胀与腐蚀的操作
Feb 07 #Python
django inspectdb 操作已有数据库数据的使用步骤
Feb 07 #Python
python数据抓取3种方法总结
Feb 07 #Python
python 批量将中文名转换为拼音
Feb 07 #Python
You might like
apache2.2.4+mysql5.0.77+php5.2.8安装精简
2009/04/29 PHP
PHP提交表单失败后如何保留已经填写的信息
2014/06/20 PHP
PHP图形操作之Jpgraph学习笔记
2015/12/25 PHP
apache php mysql开发环境安装教程
2016/07/28 PHP
yii2.0整合阿里云oss上传单个文件的示例
2017/09/19 PHP
PHP实现字母数字混合验证码功能
2019/07/11 PHP
php ZipArchive实现多文件打包下载实例
2019/10/31 PHP
jQuery滚动条插件nanoscroller使用指南
2015/04/21 Javascript
javascript实现淡蓝色的鼠标拖动选择框实例
2015/05/09 Javascript
几种经典排序算法的JS实现方法
2016/03/25 Javascript
微信小程序进行微信支付的步骤昂述
2016/12/01 Javascript
javascript实现简单的可随机变色网页计算器示例
2016/12/30 Javascript
解决Vue 项目打包后favicon无法正常显示的问题
2018/09/01 Javascript
详解vue+axios给开发环境和生产环境配置不同的接口地址
2019/08/16 Javascript
基于Vue.js与WordPress Rest API构建单页应用详解
2019/09/16 Javascript
vue中使用rem布局代码详解
2019/10/30 Javascript
JavaScript 中判断变量是否为数字的示例代码
2020/10/22 Javascript
详解JavaScript 中的批处理和缓存
2020/11/19 Javascript
Python中的random()方法的使用介绍
2015/05/15 Python
Python中的sort()方法使用基础教程
2017/01/08 Python
python数据预处理之将类别数据转换为数值的方法
2017/07/05 Python
python如何爬取个性签名
2018/06/19 Python
Python 中pandas索引切片读取数据缺失数据处理问题
2019/10/09 Python
解决flask接口返回的内容中文乱码的问题
2020/04/03 Python
俄罗斯连接商品和买家的在线平台:goods.ru
2020/11/30 全球购物
七年级历史教学反思
2014/02/05 职场文书
勤俭节约演讲稿
2014/05/08 职场文书
社保委托书怎么写
2014/08/02 职场文书
初中家长评语大全
2014/12/26 职场文书
家长通知书家长意见
2014/12/30 职场文书
2015年小学开学寄语
2015/02/27 职场文书
2015年女职工工作总结
2015/05/15 职场文书
2015年生活老师工作总结
2015/05/27 职场文书
机关单位2016年法制宣传日活动总结
2016/04/01 职场文书
求职自我评价参考范文
2019/05/16 职场文书
Python中异常处理用法
2021/11/27 Python