PHP前端开发

python下载大文件带进度条 python下载接口文件的进度条

百变鹏仔 3天前 #Python
文章标签 进度条
使用 Python 下载大文件并显示进度条,可通过 requests 和 tqdm 模块实现。具体步骤为:1. 安装模块;2. 导入模块;3. 获取文件大小;4. 创建进度条;5. 下载文件并更新进度条。下载完成后,进度条自动关闭。

如何使用 Python 下载大文件并显示进度条

开门见山回答:

使用 Python 下载大文件并显示进度条,可以使用 requests 模块搭配 tqdm 模块实现。

详细步骤:

立即学习“Python免费学习笔记(深入)”;

1. 安装必要的模块

pip install requests tqdm

2. 导入模块

import requestsfrom tqdm import tqdm

3. 获取文件大小

url = "https://example.com/large_file.zip"response = requests.head(url)file_size = int(response.headers.get('Content-Length', 0))

4. 创建进度条

pbar = tqdm(total=file_size, unit='B', unit_scale=True)

5. 下载文件并更新进度条

with requests.get(url, stream=True) as r:    for chunk in r.iter_content(chunk_size=1024):        if chunk:            pbar.update(len(chunk))            pbar.write(f'Downloaded {pbar.n/file_size*100:.2f}%')

当下载完成时,进度条将自动关闭。

代码示例:

import requestsfrom tqdm import tqdmurl = "https://example.com/large_file.zip"response = requests.head(url)file_size = int(response.headers.get('Content-Length', 0))pbar = tqdm(total=file_size, unit='B', unit_scale=True)with requests.get(url, stream=True) as r:    for chunk in r.iter_content(chunk_size=1024):        if chunk:            pbar.update(len(chunk))            pbar.write(f'Downloaded {pbar.n/file_size*100:.2f}%')