[python] Requests 라이브러리를 이용해 업로드 진행 상태를 표시하는 방법은?
먼저, Requests 라이브러리를 설치합니다. 다음 명령어를 사용하여 설치할 수 있습니다.
pip install requests
Requests 라이브러리를 이용하여 파일을 업로드할 때는 requests.post
메서드를 사용합니다. 이 메서드는 업로드할 파일을 files
파라미터로 전달합니다. 업로드가 진행 중일 때, response
객체의 raw
속성을 이용하여 업로드 진행 상태를 확인할 수 있습니다.
아래는 파일 업로드 진행 상태를 표시하는 예제 코드입니다.
import requests
def upload_file(file_path, upload_url):
with open(file_path, 'rb') as file:
response = requests.post(upload_url, files={'file': file}, stream=True)
if response.status_code == 200:
total_size = int(response.headers.get('content-length'))
uploaded_size = 0
with open('uploaded_file.txt', 'wb') as output_file:
for chunk in response.iter_content(chunk_size=1024):
output_file.write(chunk)
uploaded_size += len(chunk)
print(f'Uploaded {uploaded_size} bytes of {total_size} bytes')
return response.status_code
upload_file('file_to_upload.txt', 'http://example.com/upload')
이 코드는 file_to_upload.txt
파일을 http://example.com/upload
주소로 업로드합니다. 업로드 진행 상태는 업로드된 바이트 수를 출력합니다. 업로드가 완료되면 HTTP 200 OK
응답을 반환합니다.
이 방법을 사용하여 업로드 진행 상태를 표시할 수 있습니다. 자세한 내용은 Requests 라이브러리의 공식 문서를 참고하시기 바랍니다.
- Requests 라이브러리 공식 문서: https://requests.readthedocs.io/en/latest/