Python에서 요청과 함께 "Multipart/Form-Data" 보내기
Multipart/form-data는 파일 업로드에 사용되는 일반적인 인코딩입니다. 웹 서버에 다른 데이터. Python의 요청 라이브러리를 사용하면 다중 부분/양식 데이터 요청을 쉽게 보낼 수 있습니다.
파일 보내기
파일을 보내려면 다음의 files 매개변수를 사용할 수 있습니다. post() 메소드. 이 매개변수는 키가 양식 필드 이름이고 값이 업로드할 파일 객체인 사전을 기대합니다.
양식 데이터 보내기
파일 외에도 files 매개변수를 사용하여 양식 데이터를 보낼 수도 있습니다. 그러나 파일 매개변수를 지정하면 요청이 기본 application/x-www-form-urlencoded POST 대신 multipart/form-data POST를 전송한다는 점에 유의하는 것이 중요합니다.
파일 매개변수를 사용하면 문자열이나 바이트열 객체를 양식 필드의 값으로 간단히 전달할 수 있습니다. 예:
import requests files = {'foo': 'bar'} response = requests.post('http://httpbin.org/post', files=files)
파일 매개변수 사용자 정의
단일 문자열 또는 바이트열 객체. 튜플에는 다음이 포함되어야 합니다.
예:
files = {'foo': (None, 'bar')} # No filename parameter
동일한 이름으로 여러 필드 보내기
튜플 목록을 값으로 제공하여 동일한 이름으로 여러 필드를 보낼 수도 있습니다. 파일 매개변수. 예:
files = {'foo': [(None, 'bar'), (None, 'baz')]}
Requests-Toolbelt 사용
requests-toolbelt 프로젝트는 멀티파트/양식 데이터 요청 전송 프로세스를 단순화하는 고급 멀티파트 인코더를 제공합니다. . 이 인코더를 사용하면 다음 작업을 수행할 수 있습니다.
예:
from requests_toolbelt.multipart.encoder import MultipartEncoder mp_encoder = MultipartEncoder( fields={ 'foo': 'bar', 'spam': ('spam.txt', open('spam.txt', 'rb'), 'text/plain'), } ) headers = {'Content-Type': mp_encoder.content_type} response = requests.post('http://httpbin.org/post', data=mp_encoder, headers=headers)
위 내용은 요청 라이브러리를 사용하여 Python에서 Multipart/Form-Data 요청을 어떻게 보낼 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!