首页 > 编程语言 > 详细

初识python: 文件下载进度

时间:2019-08-08 23:52:33      阅读:146      评论:0      收藏:0      [点我收藏+]

(后续待更新...)

使用 request 的 urlretrieve 方法创建“回调函数”: 下载进度

详细代码如下:

技术分享图片
#!/user/bin env python
# author:Simple-Sir
# time:2019/8/8 21:00
# 下载进度
from urllib import request
import time

def downPercent(blockNum,blockSize,totalSize):
    ‘‘‘
    回调函数,下载进度
    :param blockNum:已经下载的数据块
    :param blockSize:数据块的大小
    :param totalSize:要下载文件总大小
    ‘‘‘
    downed = blockNum*blockSize/1024  # 已下载大小 kb
    totalSize = totalSize/1024  # 总大小 kb
    p = round(downed/totalSize*100,2)  # 已下载百分比
    downWait = totalSize-downed  # 待下载大小 kb
    if p>100:
        p=100
    if downWait<0:
        downWait=0
    nowtime = time.strftime(%Y-%m-%d %H:%M:%S, time.localtime(time.time()))
    print({} 文件总大小:{}.format(nowtime,totalSize))
    print({} 已下载:{}(\033[36;1m{}%\033[0m).format(nowtime,downed, p))
    print({} 待下载:{}(\033[31;1m{}%\033[0m).format(nowtime,downWait, round(100-p,2)))

def download():
    url = https://cdn.mysql.com//Downloads/MySQLInstaller/mysql-installer-community-5.7.27.0.msi  # mysql数据库下载
    startTime = time.time()
    request.urlretrieve(url,mysql-installer-community-5.7.27.0.msi,downPercent)
    endTime = time.time()
    print(文件已下载完成!总用时:,time.strftime(%M:%S, time.localtime(endTime-startTime)))

if __name__ == __main__:
    download()
下载进度

执行过程:

技术分享图片

 

初识python: 文件下载进度

原文:https://www.cnblogs.com/simple-li/p/11324455.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!