广告
返回顶部
首页 > 资讯 > 后端开发 > Python >怎么用Python展示文件下载进度条
  • 789
分享到

怎么用Python展示文件下载进度条

2023-06-25 12:06:40 789人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

这篇文章主要介绍“怎么用python展示文件下载进度条”,在日常操作中,相信很多人在怎么用Python展示文件下载进度条问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么用Python展示文件下载进度条”的疑

这篇文章主要介绍“怎么用python展示文件下载进度条”,在日常操作中,相信很多人在怎么用Python展示文件下载进度条问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么用Python展示文件下载进度条”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

1、前言

大家在用Python写一些小程序的时候,经常都会用到文件下载,对于一些较小的文件,大家可能不太在乎文件的下载进度,因为一会就下载完毕了。

但是当文件较大,比如下载chromedriver的时候,我们如果能够看到下载的进度条,那该多么友好。毕竟在npm,pip安装包的时候都有类似的进度条。

2、requests

requests库相信大家都用过,做接口测试少不了它。其实我们平时下载文件,也可以用requests做到的,比如有这样一个地址:https://autoupdate.termius.com/windows/Termius.exe

我们要下载它,应该怎么做呢?

这里来写一下伪代码,非常好懂。

# 第一步: 访问这个链接import requestsr = requests.get("Https://autoupdate.termius.com/windows/Termius.exe")# 第二步: 获取返回的文件内容,并写到本地with open(r"./termius.exe", "wb") as f:    f.write(r.content)

由于我这个文件很大,所以过程很漫长,我这边就不展示具体细节了。大家可以找个几M的小文件试试。放上最终结果:

怎么用Python展示文件下载进度条

可以看到,执行完毕,文件也获取到了

3、思考

有没有觉得,这样下载文件很单调,我也不知道进度,比如下载了多少了,特别是针对大一点的文件,一直这样等着我以为他断开连接了呢。

如果咱们能在下载文件的时候,显示出进度条该多好,比如迅雷/百度网盘那样子的。

只需要安装一个库即可
要做到这些,我们只需要安装tqdm库就行了。

pip install tqdm

下面是带注释的示例代码:

import requestsfrom tqdm import tqdmdef download(url: str, fname: str):    # 用流stream的方式获取url的数据    resp = requests.get(url, stream=True)    # 拿到文件的长度,并把total初始化为0    total = int(resp.headers.get('content-length', 0))    # 打开当前目录的fname文件(名字你来传入)    # 初始化tqdm,传入总数,文件名等数据,接着就是写入,更新等操作了    with open(fname, 'wb') as file, tqdm(        desc=fname,        total=total,        unit='iB',        unit_scale=True,        unit_divisor=1024,    ) as bar:        for data in resp.iter_content(chunk_size=1024):            size = file.write(data)            bar.update(size)if __name__ == "__main__":    # 下载文件,并传入文件名    url = "https://autoupdate.termius.com/windows/Termius.exe"    download("https://autoupdate.termius.com/windows/Termius.exe", "haha.exe")

代码比较简单,tqdm的内容基本都是固定写法,大家不用疑惑,注意好requests等自己熟悉的部分就好。

我们来看看gif效果图,是不是狂炫酷霸吊炸天(别好奇我的cmd为何这么帅气,我是不会告诉你滴,除非你点赞):

怎么用Python展示文件下载进度条

到此,关于“怎么用Python展示文件下载进度条”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

--结束END--

本文标题: 怎么用Python展示文件下载进度条

本文链接: https://www.lsjlt.com/news/304753.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 怎么用Python展示文件下载进度条
    这篇文章主要介绍“怎么用Python展示文件下载进度条”,在日常操作中,相信很多人在怎么用Python展示文件下载进度条问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么用Python展示文件下载进度条”的疑...
    99+
    2023-06-25
  • 利用Python展示文件下载进度条
    目录1、前言2、requests3、思考1、前言 大家在用Python写一些小程序的时候,经常都会用到文件下载,对于一些较小的文件,大家可能不太在乎文件的下载进度,因为一会就下载完毕...
    99+
    2022-11-12
  • python下载文件带进度条怎么实现
    要实现带进度条的文件下载,可以使用`urllib.request`模块和`tqdm`库。以下是一个示例代码:```pythonimp...
    99+
    2023-09-26
    python
  • 大文件下载以及进度条展示和MD5校验
    使用socket网络,上传一个视频,大小在3G左右能够显示进度条,显示花费时间下载使用TCP协议server向client发送文件新建文件server.py,代码如下:import os import json impo...
    99+
    2023-01-30
    进度条 大文件
  • vue+element+springboot实现文件下载进度条展现功能示例
    目录1. 需求背景2. 优化方案3. 具体实现3.1 前端代码3.2 后台代码4. 总结本文主要介绍了vue+element+springboot实现文件下载进度条展现功能示例,分享...
    99+
    2022-11-12
  • 使用python下载大型文件显示进度条和下载时间的操作代码
    目录推荐阅读requets普通方法流下载加个进度条模块参考文献推荐阅读 Python 给下载文件显示进度条和下载时间的实现 requets普通方法 下载大型文件时,我们一般都是这样下...
    99+
    2022-11-11
  • React和Vue实现文件下载进度条
    目录一、需求场景二、实现原理三、react 实现步骤1. 托管静态资源2. 封装hook3. 使用hook四、vue 实现步骤1. 托管静态资源2. 封装hook3. 使用hook五...
    99+
    2023-05-18
    React下载进度条 Vue下载进度条
  • Android文件下载进度条的实现代码
    main.xml: 代码如下:<xml version="1.0" encoding="utf-8"><LinearLayout xmlns:android=...
    99+
    2022-06-06
    进度条 Android
  • Vue文件下载进度条的实现过程
    目录需求场景:实现原理:优化过程:下载方法的组件引入mixinVuex配置进度条最终效果图参考文章:需求场景: 1、大文件压缩过后依旧很大,接口返回response速度过慢,页面没有...
    99+
    2022-11-13
  • php怎么实现下载进度条
    本篇内容主要讲解“php怎么实现下载进度条”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“php怎么实现下载进度条”吧!php实现下载进度条的方法:1、创建“download.php”文件,代码如...
    99+
    2023-06-25
  • vue项目实现文件下载进度条功能
    平时业务中下载文件方式常见的有俩种: 第一种,直接访问服务器的文件地址,自动下载文件; 第二种 ,服务器返回blob文件流,再对文件流进行处理和下载。 一般小文件适用于第一种下载方案...
    99+
    2022-11-12
  • android中实现OkHttp下载文件并带进度条
    OkHttp是比较火的网络框架,它支持同步与异步请求,支持缓存,可以拦截,更方便下载大文件与上传文件的操作。下面我们用OkHttp来下载文件并带进度条!相关资料: 官网地址:http://square.github.io/okhttp/gi...
    99+
    2023-05-30
    okhttp 下载 文件
  • Android实现Service下载文件,Notification显示下载进度的示例
    先放个gif。。最终效果如果: 主要演示了Android从服务器下载文件,调用Notification显示下载进度,并且在下载完毕以后点击通知会跳转到安装APK的界面,演...
    99+
    2022-06-06
    service 示例 notification Android
  • python使用requests模块下载文件并获取进度提示
    使用python3写了一个获取某网站文件的小脚本,使用了requests模块的get方法得到内容,然后通过文件读写的方式保存到硬盘同时需要实现下载进度的显示 安装模块pip3 install requests&...
    99+
    2023-01-31
    进度 模块 提示
  • Python在Console下显示文本进度条的方法
    进度条实现原理 进度条和一般的print区别在哪里呢? 答案就是print会输出一个\n,也就是换行符,这样光标移动到了下一行行首,接着输出,之前已经通过stdout输出的东西依旧保留,而且保证我们在下面看...
    99+
    2022-06-04
    进度条 文本 方法
  • Retrofit+Rxjava下载文件进度的示例分析
    这篇文章主要为大家展示了“Retrofit+Rxjava下载文件进度的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Retrofit+Rxjava下载文件进度的示例分析”这篇文章吧。准备...
    99+
    2023-05-30
    retrofit rxjava
  • Android实现文件下载进度显示功能
    和大家一起分享一下学习经验,如何实现Android文件下载进度显示功能,希望对广大初学者有帮助。 先上效果图:    上方的蓝色进度条,会根据文件下载量的百分比进行加载,中部的...
    99+
    2022-06-06
    Android
  • java下载进度条不动怎么解决
    Java下载进度条不动有多种可能性,常见的原因和解决方法如下:1、网络问题下载进度条不动可能是因为网络问题导致的,可以尝试重新下载或...
    99+
    2023-05-13
    java下载进度条 java
  • Android中怎么利用AsyncTask实现下载文件动态更新进度条功能
    Android中怎么利用AsyncTask实现下载文件动态更新进度条功能,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。1. 泛型AysncTask<Params, Pro...
    99+
    2023-05-30
    android asynctask
  • python文本进度条怎么实现
    本篇内容介绍了“python文本进度条怎么实现”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1,刚开始(可能会很low)import&nbs...
    99+
    2023-06-22
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作