Python下载文件进度条Demo
前言
所有的前置环境以及需要学习的基础我都放置在【Python基础(适合初学-完整教程-学习时间一周左右-节约您的时间)】中,学完基础咱们再配置一下Python爬虫的基础环境【看完这个,还不会【Python爬虫环境】,请你吃瓜】,搞定了基础和环境,我们就可以相对的随心所欲的获取想要的数据了,所有的代码都是我一点点写的,都细心的测试过,如果某个博客爬取的内容失效,私聊我即可,留言太多了,很难看得到,本系列的文章意在于帮助大家节约工作时间,希望能给大家带来一定的价值。
示例环境
系统环境:win11
开发工具:PyCharm Community Edition 2022.3.1
Python版本:Python 3.9.6
资源地址:链接:https://pan.baidu.com/s/1UZA8AAbygpP7Dv0dYFTFFA 提取码:7m3e
学习目标:
本次我们要学会【Progressbar】进度条的使用,我们再下载文件的时候需要一个进度条提示我们的下载进度,这样才能更好的进行规划时间,那么我们这个进度条就是必须要学会的内容,接下来我们来进行完整的学习。
演示代码
引入的包,这里引入的包是很多的呢。
from tkinter import * from tkinter import ttk import tkinter.messagebox as messagebox import tkinter as tk
核心技术点:
1、初始化【Progressbar】,这里我返回了一个bar的变量
bar = ttk.Progressbar(root, length=600, cursor='spider', mode="determinate", maximum=100, orient=tk.HORIZONTAL) bar.grid(row=1, column=1, columnspan=3)
2、初始化数据bar["value"] = 0
3、修改bar['value']的值
4、更新进度条的UI
root.update()
注意点:
1、包环境需求要到位,别使用的时候发现无法获取爆红
2、一定要给返回变量,如果没有给你不知道操作谁
3、声明与实际操作一定要分开,我们要依据声明来获取对应的操作变量
4、修改值之后一定要刷新UI,如果不刷新是没有任何效果的
示例源码:
bar = ttk.Progressbar(root, length=600, cursor='spider', mode="determinate", maximum=100, orient=tk.HORIZONTAL) bar.grid(row=1, column=1, columnspan=3) bar["value"] = 0 bar["value"] = onefloat(plan) root.update()
示例函数:
def show(): try: btn1['state'] = 'disable' DownUrl = e.get() bar["value"] = 0 for item in range(1,100): bar["value"] = item root.update() time.sleep(0.1) btn1['state'] = 'normal' messagebox.showinfo("提示", "{0}下载完毕!".format("title")) except: messagebox.showinfo("提示", "错误路径")
学习结果:
下载过程:
下载完毕 :
学习总结:
我们在下载的过程中不仅要添加【进度条】还需要对【按钮状态】进行更新,这样才能保证整个工具没有bug的存在,祝大家在学习的路上顺水行舟。