Python爬虫设置进度条的方法有:使用 tqdm 库:提供易用的 API 和丰富的自定义选项。使用进度条回调函数:适合需要自定义进度或低级爬虫任务。使用 rich 库:提供美观且高级的进度条和控制台输出。

Python爬虫如何设置进度条
简介
在爬取大型网站或处理庞大数据集时,使用进度条可以直观地显示爬虫的进度,提高用户体验。Python中有多种方法可以设置进度条。
方法 1:tqdm 库
tqdm 库是一个流行的进度条库,提供了丰富的功能和易于使用的 API。
示例代码:
from tqdm import tqdm
# 针对列表进行迭代并显示进度条
my_list = ['item1', 'item2', 'item3', 'item4', 'item5']
for item in tqdm(my_list):
# 对 item 执行操作
pass优点:
立即学习“Python免费学习笔记(深入)”;
- 易于使用
- 提供丰富的自定义选项
- 支持多线程和多进程
方法 2:进度条回调函数
示例代码:
def progress_callback(bytes_downloaded, blocks_downloaded, total_bytes):
# 计算下载进度
progress = bytes_downloaded / total_bytes
# 显示进度条
print(f'下载进度:{progress*100:.2f}%')
# 使用 progress_callback 设置进度条
import requests
url = 'https://example.com/file.zip'
response = requests.get(url, stream=True)
for chunk in response.iter_content(chunk_size=1024):
progress_callback(len(chunk), 1, response.headers.get('Content-Length'))优点:
立即学习“Python免费学习笔记(深入)”;
- 适用于低级爬虫任务
- 适用于需要自定义进度的场景
方法 3:rich 库
rich 库提供了更丰富的进度条和控制台输出。
示例代码:
from rich.progress import Progress
# 创建进度跟踪器
with Progress() as progress:
# 针对列表进行迭代并显示进度条
my_list = ['item1', 'item2', 'item3', 'item4', 'item5']
for item in my_list:
# 对 item 执行操作
progress.update(task_id="my_task", advance=1)优点:
立即学习“Python免费学习笔记(深入)”;
- 提供美观的进度条和控制台输出
- 适用于需要高级功能和自定义的场景










