[파이썬] requests 프로그레스 바와 함께 파일 다운로드
파일 다운로드는 웹 개발에서 매우 중요한 부분입니다. 이번 블로그에서는 requests
라이브러리를 사용하여 프로그레스 바와 함께 파일 다운로드를 처리하는 방법을 알아보겠습니다.
1. requests 라이브러리 설치하기
다음 명령어를 사용하여 requests
라이브러리를 설치합니다:
pip install requests
2. 파일 다운로드 함수 작성하기
다음과 같이 download_file
함수를 작성하여 파일을 다운로드하고 프로그레스 바를 표시할 수 있습니다:
import requests
from tqdm import tqdm
def download_file(url, save_path):
response = requests.get(url, stream=True)
total_size = int(response.headers.get('content-length', 0))
block_size = 1024 # 1 Kibibyte
# 프로그레스 바를 초기화합니다
progress_bar = tqdm(total=total_size, unit='iB', unit_scale=True)
with open(save_path, 'wb') as file:
for data in response.iter_content(block_size):
# 다운로드하는 데이터를 파일에 씁니다
file.write(data)
# 프로그레스 바 업데이트
progress_bar.update(len(data))
# 프로그레스 바를 완료 상태로 표시합니다
progress_bar.close()
3. 파일 다운로드하기
이제 download_file
함수를 사용하여 파일을 다운로드할 수 있습니다. 아래 예제에서는 이미지 파일을 다운로드하고 /path/to/save/image.jpg
경로에 저장합니다:
download_file('https://example.com/image.jpg', '/path/to/save/image.jpg')
위 코드에서 https://example.com/image.jpg
부분은 다운로드할 파일의 URL을 나타내며, /path/to/save/image.jpg
부분은 저장될 파일의 경로를 나타냅니다. 실제 다운로드할 파일의 URL과 저장될 파일의 경로를 적절히 수정하여 사용하시면 됩니다.
요약
이렇게 하면 requests
라이브러리와 tqdm
라이브러리를 사용하여 프로그레스 바와 함께 파일을 다운로드할 수 있습니다. 이를 활용하여 웹 개발 프로젝트에서 파일 다운로드 기능을 구현해보세요!