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定时检查启动某个exe程序适合检测exe是否挂了
Jan 21 Python
python基础教程之自定义函数介绍
Aug 29 Python
对于Python的Django框架部署的一些建议
Apr 09 Python
Python win32com 操作Exce的l简单方法(必看)
May 25 Python
解决nohup重定向python输出到文件不成功的问题
May 11 Python
Python爬虫实现(伪)球迷速成
Jun 10 Python
python利用JMeter测试Tornado的多线程
Jan 12 Python
tensorflow-gpu安装的常见问题及解决方案
Jan 20 Python
Python图像处理库PIL的ImageFont模块使用介绍
Feb 26 Python
python将unicode和str互相转化的实现
May 11 Python
keras自定义损失函数并且模型加载的写法介绍
Jun 15 Python
C站最全Python标准库总结,你想要的都在这里
Jul 03 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
PHP的autoload自动加载机制使用说明
2010/12/28 PHP
shell脚本作为保证PHP脚本不挂掉的守护进程实例分享
2013/07/15 PHP
统一接口:为FireFox添加IE的方法和属性的js代码
2007/03/25 Javascript
javascript Prototype 对象扩展
2009/05/15 Javascript
EXT中xtype的含义分析
2010/01/07 Javascript
用js实现trim()的解决办法
2013/04/16 Javascript
jquery遍历筛选数组的几种方法和遍历解析json对象
2013/12/13 Javascript
节点的插入之append()和appendTo()的用法介绍
2014/01/13 Javascript
详解JavaScript对W3C DOM模版的支持情况
2015/06/16 Javascript
jQuery实现下滑菜单导航效果代码
2015/08/25 Javascript
JavaScript动态设置div的样式的方法
2015/12/26 Javascript
jQuery对象的链式操作用法分析
2016/05/10 Javascript
js基础之DOM中元素对象的属性方法详解
2016/10/28 Javascript
jQuery Validate插件自定义验证规则的方法
2016/12/27 Javascript
javascript事件的绑定基础实例讲解(34)
2017/02/14 Javascript
Bootstrap模态对话框用法简单示例
2018/08/31 Javascript
layui 实现自动选择radio单选框(checked)的方法
2019/09/03 Javascript
nuxt框架中对vuex进行模块化设置的实现方法
2019/09/06 Javascript
vue el-table实现行内编辑功能
2019/12/11 Javascript
[59:35]DOTA2上海特级锦标赛主赛事日 - 3 败者组第三轮#1COL VS Alliance第二局
2016/03/04 DOTA
python利用urllib和urllib2访问http的GET/POST详解
2017/09/27 Python
如何用tempfile库创建python进程中的临时文件
2021/01/28 Python
HTML5 embed标签定义和用法详解
2014/05/09 HTML / CSS
Probikekit日本:自行车套件,跑步和铁人三项装备
2017/04/03 全球购物
美国汽车性能部件和赛车零件网站:Vivid Racing
2018/03/27 全球购物
租租车:国际租车、美国租车、欧洲租车、特价预订国外租车(中文服务)
2018/03/28 全球购物
Chicco婴儿用品美国官网:汽车座椅、婴儿推车、高脚椅等
2018/11/05 全球购物
小学校长竞聘演讲稿
2014/05/16 职场文书
小学教师师德师风演讲稿
2014/08/22 职场文书
综合素质评价自我评价
2015/03/06 职场文书
入团申请书格式
2019/06/20 职场文书
2020年元旦晚会策划书模板
2019/12/30 职场文书
详解vue中v-for的key唯一性
2021/05/15 Vue.js
Python提取PDF指定内容并生成新文件
2021/06/09 Python
CSS实现隐藏搜索框功能(动画正反向序列)
2021/07/21 HTML / CSS
python+opencv实现目标跟踪过程
2022/06/21 Python