使用 python 下载大文件并显示进度条,可通过 requests 和 tqdm 模块实现。具体步骤为:1. 安装模块;2. 导入模块;3. 获取文件大小;4. 创建进度条;5. 下载文件并更新进度条。下载完成后,进度条自动关闭。
如何使用 Python 下载大文件并显示进度条
开门见山回答:
使用 Python 下载大文件并显示进度条,可以使用 requests 模块搭配 tqdm 模块实现。
详细步骤:
立即学习“Python免费学习笔记(深入)”;
1. 安装必要的模块
pip install requests tqdm
2. 导入模块
import requests
from 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 requests
from tqdm import tqdm
url = "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}%')