通过 http 请求下载文件时的进度条

2024-03-08

我需要下载一个相当大的(~200MB)文件。我想出了如何下载并保存文件here https://stackoverflow.com/questions/16694907/how-to-download-large-file-in-python-with-requests-py。最好有一个进度条来知道已经下载了多少。我发现进度条 http://progressbar-2.readthedocs.io/en/latest/usage.html但我不确定如何将两者结合在一起。

这是我尝试过的代码,但它不起作用。

bar = progressbar.ProgressBar(max_value=progressbar.UnknownLength)
with closing(download_file()) as r:
    for i in range(20):
        bar.update(i)

我建议你尝试一下tqdm https://github.com/tqdm/tqdm,使用起来非常方便。 下载示例代码requests http://docs.python-requests.org/en/master/图书馆:

from tqdm import tqdm
import requests

url = "http://www.ovh.net/files/10Mb.dat" #big file test
# Streaming, so we can iterate over the response.
response = requests.get(url, stream=True)
total_size_in_bytes= int(response.headers.get('content-length', 0))
block_size = 1024 #1 Kibibyte
progress_bar = tqdm(total=total_size_in_bytes, unit='iB', unit_scale=True)
with open('test.dat', 'wb') as file:
    for data in response.iter_content(block_size):
        progress_bar.update(len(data))
        file.write(data)
progress_bar.close()
if total_size_in_bytes != 0 and progress_bar.n != total_size_in_bytes:
    print("ERROR, something went wrong")
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

通过 http 请求下载文件时的进度条 的相关文章

  • xlrd.biffh.XLRDError:Excel xlsx 文件;不支持[重复]

    这个问题在这里已经有答案了 我正在尝试使用读取启用宏的 Excel 工作表pandas read excel与 xlrd 库 它在本地运行良好 但是当我尝试将其推送到 PCF 时 我收到此错误 2020 12 11T21 09 53 441
  • 切片稀疏(scipy)矩阵

    我将不胜感激任何帮助 以理解从 scipy sparse 包中切片 lil matrix A 时的以下行为 实际上 我想根据行和列的任意索引列表提取子矩阵 当我使用这两行代码时 x1 A list 1 x2 x1 list 2 一切都很好
  • PyQt:如何通过匿名代理使用网页

    这真让我抓狂 我想在 QWebPage 中显示一个 url 但我想通过匿名代理来实现 Code setting up the proxy proxy QNetworkProxy proxy setHostName 189 75 98 199
  • 即使页面未完全加载,我们也可以使用 Selenium 获取页面源吗(TimeoutException: Message: timeout)?

    即使遇到 TimeoutException Message timeout 也能获取页面源码吗 当我调用 driver page source 时 有时无法加载整页 但我只需要它的部分信息 尚未确定 所以我只想在任何情况下保存页面 是否可以
  • 从Python中的字符串中提取货币金额

    我正在制作一个程序 从字符串中获取货币并将其转换为其他货币 例如 如果字符串是 the car cost me 13 250 我需要得到 and 13250 我已经有了这个正则表达式 1 确实如此 但是该字符串很有可能有多个价格 并且全部使
  • Python在postgresql表中查找带有单引号符号的字符串

    我需要从 psql 表中查找包含多个单引号的字符串 我当前的解决方案是将单引号替换为双单引号 如下所示 sql query f SELECT exists SELECT 1 FROM table name WHERE my column m
  • Jupyter Notebooks 不显示进度条

    我正在尝试在 Jupyter 笔记本中显示进度条 这是一台新电脑 我通常做的事情似乎不起作用 from tqdm import tqdm notebook example iter 1 2 3 4 5 for rec in tqdm not
  • Tweepy StreamListener 到 CSV

    我是 python 新手 我正在尝试开发一个应用程序 使用 Tweepy 和 Streaming API 从 Twitter 检索数据并将数据转换为 CSV 文件 问题是此代码不会创建输出 CSV 文件 也许是因为我应该将代码设置为在实现例
  • 更新 Sqlalchemy 中的多个列

    我有一个在 Flask 上运行的应用程序 并使用 sqlalchemy 与数据库交互 我想用用户指定的值更新表的列 我正在使用的查询是 def update table value1 value2 value3 query update T
  • WindowsError:[错误 126] 使用 ctypes 加载操作系统时

    python代码无法在Windows 7平台上运行 def libSO lib ctypes cdll LoadLibrary ConsoleApplication2 so lib cfoo2 1 3 当我尝试运行它时 得到来自python
  • 使用 scipy curve_fit 拟合噪声指数的建议?

    我正在尝试拟合通常按以下方式建模的数据 def fit eq x a b c d e return a 1 np exp x b c np exp x d e x np arange 0 100 0 001 y fit eq x 1 1 1
  • PySide6.1 与 matplotlib 3.4 不兼容

    当我只安装PySide6时 GUI程序运行良好 但是一旦我安装了matplotlib及其依赖包 包括pyqt5 则GUI程序将无法运行并输出以下错误消息 This application failed to start because no
  • 为什么我无法在 Mac OS X Terminal.app 上的 Python 解释器中显示 unicode 字符?

    如果我尝试粘贴 unicode 字符 例如中间的点 在我的 python 解释器中它什么也不做 我在 Mac OS X 上使用 Terminal app 当我只是在 bash 中时 我没有遇到任何问题 但在解释器中 python Pytho
  • 动态 __init_subclass__ 方法的参数绑定

    我正在尝试让类装饰器工作 装饰器会添加一个 init subclass 方法到它所应用的类 但是 当该方法动态添加到类中时 第一个参数不会绑定到子类对象 为什么会发生这种情况 举个例子 这是可行的 下面的静态代码是我试图最终得到的示例 cl
  • `list()` 被认为是一个函数吗?

    list显然是内置类型 https docs python org 3 library stdtypes html list在Python中 我看到底下有一条评论this https stackoverflow com a 53645813
  • Python 类型安全吗?

    根据维基百科 https en wikipedia org wiki Type system Type safety and memory safety 如果一种语言不允许违反类型系统规则的操作或转换 计算机科学家就认为该语言是 类型安全的
  • Python]将两个文本文件合并为一个(逐行)[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我是蟒蛇新手 我想做的是将文件 a 和文件 b 逐行合并到一个文件中 例如 text file a a n b n c text fi
  • 如何使用 Keras ImageDataGenerator 预测单个图像?

    我已经训练 CNN 对图像进行 3 类分类 在训练模型时 我使用 keras 的 ImageDataGenerator 类对图像应用预处理功能并重新缩放它 现在我的网络在测试集上训练得非常准确 但我不知道如何在单图像预测上应用预处理功能 如
  • 处理大文件的最快方法?

    我有多个 3 GB 制表符分隔文件 每个文件中有 2000 万行 所有行都必须独立处理 任何两行之间没有关系 我的问题是 什么会更快 逐行阅读 with open as infile for line in infile 将文件分块读入内存
  • 在 virtualenvwrapper 中激活环境

    我安装了virtualenv and virtualenvwrapper用这个命令我创建了一个环境 mkvirtualenv cv 它有效 创建后我就处于新环境中 现在我重新启动了我的电脑 我想activate又是那个环境 但是怎么样 我使

随机推荐

  • 将Django模型父类添加到现有模型中以实现多表继承

    The Django 文档 https docs djangoproject com en 1 9 topics db models multi table inheritance使用此示例来演示多表继承 from django db im
  • LINQ查询中的自连接并返回视图

    我正在使用 LINQ 自联接查询在视图上显示数据 我的 sql 表包含一些员工详细信息 我需要显示员工详细信息及其经理姓名 因为它是表中的 ManagerID EmpID Name ManagerID Designation Phone A
  • “导出声明类型 Xyz”与“导出类型 Xyz”中的声明意味着什么

    在定义文件中 写入以下两者是有效的 export declare type Abc string export type Bcd string The declare这里的关键字没有任何作用 对吗 正确的 declare当您需要说明执行时会
  • Visual Studio 2017状态栏颜色

    VS2017 至少是我刚刚安装的最新更新 在主窗口的底部有一个闪亮的蓝色状态栏 在视觉上非常突出 由于这是整个屏幕上唯一的大亮蓝色物体 因此非常分散注意力 有没有办法改变颜色 根据这个答案 https stackoverflow com q
  • 如何从 android studio 发出拉取请求?

    我将应用程序分叉到 android studio 当我尝试发出拉取请求时 I get Can t Create Pull Request Push failed failed to push some refs to https githu
  • 如何在一种解决方案中调试/单元测试 Web APi

    有没有一种方法可以在一个解决方案中对 Web api 进行单元测试或调试 我正在使用 HttpClient 使用 WebAPI 并且有两个 VS 实例来执行此操作 在 1 个 VS 实例中 我进行了单元测试 在第二个 VS 实例中 我在 l
  • RavenDB 中的子字符串搜索

    我有一组类型的对象Idea public class Idea public string Title get set public string Body get set 我想通过子字符串搜索这个对象 例如 当我有标题对象 idea 我希
  • 使用 GDB 调试 va_list args

    我尝试调试 Va list 参数并打印变量值示例代码是 include
  • 在 Azure WebRoles 中启用 HTTP 严格传输安全 (HSTS)

    如何为 Azure WebRoles 启用 HTTP 严格传输安全 HSTS 接受的答案令人困惑 并且正确答案 https serverfault com questions 417173 enable http strict transp
  • 在解决方案资源管理器中折叠项目

    如何使用键盘折叠 展开解决方案探索中的所有项目 In Visual Studio 2013 it is finally just part of solution explorer with a Collapse All icon 早期版本
  • 使用 MySQL Workbench 搜索所有表

    我可以使用 MySQL GUI 在所有表中搜索字符串吗 或者是这样的 mySQL 查询在数据库中的所有表中搜索字符串 https stackoverflow com questions 7523039 mysql query to sear
  • -symbolic 和 -shared GCC 标志之间有什么区别?

    从文档的描述来看 它们似乎做了同样的事情 除了 并非所有系统 支持共享并且 只有某些系统 支持符号 尚不清楚这些是否是同一组系统 共享 生成一个共享对象 然后可以将其与其他对象链接起来 形成可执行文件 并非所有系统 支持这个选项 对于可预测
  • opencl支持布尔变量吗?

    openCL 支持布尔变量吗 我目前正在使用 JOCL java 编写我的 openCL 调用代码 但我没有看到任何有关布尔值的信息 tl dr 是的 但是你应该在内核函数签名中避免它 是的 但a的大小bool is not定义的 因此 它
  • 为 .NET Framework 项目创建基于 Linux 的 Docker 文件

    我有一个 ASP Net Framework 4 8 项目 我想为此项目创建一个基于 Linux 的 Docker 文件 但我在 NET Framework 的 Docker 文件中找不到基于 Linux 的映像来用作基础映像 如何为此创建
  • Rails3 Mysql2::Error: 未知列 - ActiveRecord::StatementInvalid

    我是在这个级别上使用 Rails 中的数据库的新手 我已经寻找了几个小时 但还没有找到解决这个特定问题的方法 版本 Rails 3 2 9 Ruby 1 9 3 MySQL 5 5 28 mysql2 gem 2 9 0 Mac OS 10
  • 如果 lt_dlopen 失败,如何获取更多信息?

    我正在打电话lt dlopen并收到通用文件未找到错误 翻译后的 errno 文本 我怎样才能获得有关实际失败的更多信息 因为该文件肯定存在 这是一个加载 C 库的 C 程序 在同一个程序的其他地方 我使用相同的命令打开其他库 没有问题 因
  • “zipAlignExe”不存在。在 Android Studio 上运行我的项目时出错

    我在下面遇到错误 Error A problem was found with the configuration of task project1 zipalignDebug gt File D Program Files Android
  • Eclipse 的最佳 JVM 设置是什么? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 隐藏纵向中的 UISplitViewController 覆盖

    在采用新的UISplitViewController我正在尝试更改使用时发生的默认行为UISplitViewControllerDisplayModeAutomatic mode 在纵向工作时 我希望当用户触发推送到细节侧时隐藏主覆盖层 默
  • 通过 http 请求下载文件时的进度条

    我需要下载一个相当大的 200MB 文件 我想出了如何下载并保存文件here https stackoverflow com questions 16694907 how to download large file in python w