首页 > 其他分享 >requests 下载大文件

requests 下载大文件

时间:2023-07-06 17:14:19浏览次数:40  
标签:count 文件 content __ requests data response 下载 size

# -*- coding: utf-8 -*-
from contextlib import closing
from requests import get
url = 'https://www.test.video/aa'
# 但是使用with语句的时候是需要条件的,任何对象,只要正确实现了上下文管理,就可以使用with语句,实现上下文管理是通过__enter__和__exit__这两个方法实现的
with closing(get(url,  stream=True)) as response:
    chunk_size = 1024  # 单次请求最大值
    # response.headers['content-length']得到的数据类型是str而不是int
    content_size = int(response.headers['content-length'])  # 文件总大小
    data_count = 0  # 当前已传输的大小
    with open('文件名.mp4', "wb") as file:
        for data in response.iter_content(chunk_size=chunk_size):
            file.write(data)
            done_block = int((data_count / content_size) * 50)
            # 已经下载的文件大小
            data_count = data_count + len(data)
            # 实时进度条进度
            now_jd = (data_count / content_size) * 100
            ## %% 表示%
            print("\r [%s%s] %d%% " % (done_block * '█', ' ' * (50 - 1 - done_block), now_jd), end=" ")

  

标签:count,文件,content,__,requests,data,response,下载,size
From: https://www.cnblogs.com/boye169/p/17532700.html

相关文章

  • VSCode如何通过Ctrl+P快速打开node_modules中的文件
    背景咱们新建一个NodeJS项目,必然会安装许多依赖包,因此经常需要查阅某些依赖包的源码文件。但是,由于node_modules目录包含的文件太多,出于性能考虑,在VSCode中默认情况下是禁止搜索node_modules目录的。在这种情况下,我们将不得不依次展开node_modules的文件目录树,来查找我们所需要的......
  • Dynamics CRM字段安全配置文件,实现某个人只能看某条记录的某个字段
    共享安全字段https://blog.csdn.net/bzpfly/article/details/115652147 具体代码写法:https://learn.microsoft.com/zh-cn/power-apps/developer/data-platform/webapi/reference/fieldpermission?view=dataverse-latest  ......
  • java http大文件断点续传上传问题
    ​ 这里只写后端的代码,基本的思想就是,前端将文件分片,然后每次访问上传接口的时候,向后端传入参数:当前为第几块文件,和分片总数下面直接贴代码吧,一些难懂的我大部分都加上注释了:上传文件实体类:看得出来,实体类中已经有很多我们需要的功能了,还有实用的属性。如MD5秒传的信息。pub......
  • linux 文件与目录权限
    在Linux中,文件和目录权限是控制对其访问和操作的重要机制。每个文件和目录都有一组权限,用于定义不同用户对其执行读取、写入和执行等操作的权限级别。以下是对Linux文件和目录权限的详细讲解,并举例说明:1.文件权限:-文件权限包括读取(r)、写入(w)和执行(x)三种权限。-读取权......
  • Linux 文件系统结构和组织
    Linux的文件系统结构和组织采用了层次化的树状结构,以下是对其进行详细说明并举例:根目录(/):根目录是整个文件系统的最顶层目录,所有其他目录和文件都位于根目录下。系统目录:/bin:存放系统所需的基本命令(二进制文件),如ls、cp、rm等。例如,/bin/ls是用于列出目录内容的命令。/......
  • java http大文件断点续传上传功能
    ​ 我们平时经常做的是上传文件,上传文件夹与上传文件类似,但也有一些不同之处,这次做了上传文件夹就记录下以备后用。这次项目的需求:支持大文件的上传和续传,要求续传支持所有浏览器,包括ie6,ie7,ie8,ie9,Chrome,Firefox,360安全浏览器,并且刷新浏览器后仍然能够续传,重启浏览器(关闭......
  • 类文件结构
    根据Java虚拟机规范,类文件由单个ClassFile结构组成:ClassFile{u4magic;//Class⽂件的标志u2minor_version;//Class的⼩版本号u2major_version;//Class的⼤版本号u2constant_pool_count;//常量池的数量cp_infoconstant_pool[constant_pool_count-1];//......
  • 如何实现Java 视频文件去水印的具体操作步骤
    Java视频文件去水印在现今的数字媒体时代,视频文件无疑是最为常见的媒体之一。然而,我们有时会遇到一些带有水印的视频文件,这些水印可能是广告、商标或其他标记,影响了视频的观看体验。本文将介绍如何使用Java语言去除视频文件中的水印,并提供相应的代码示例。第一步:了解视频文件格......
  • vue生成二维码图片并且下载图片到本地
    一、安装生成二维码插件qrcode.jsnpminstall--saveqrcodejs2二、封装组件<template><div><divid="qrcode"></div></div></template><script>//二维码importQRCodefrom'qrcodejs2'......
  • js 实现文件下载并重命名
    JavaScript实现文件下载并重命名 第一种是HTML官网中的方法<ahref="/images/liang.jpg"download="文件名称">HTML5中a标签提供了一个filename属性,可以下载成指定的download属性名称这种同源访问是没有问题的,但一跨域就不行了,试了其它方法,不是报跨域错误,就是在当......