Python请求,多部分没有文件

时间:2015-12-24 10:56:48

标签: python python-requests

是否可以使用python请求发送multipart / form-data而不发送文件?

我的请求标题应如下所示:

--3eeaadbfda0441b8be821bbed2962e4d
Content-Disposition: form-data; name="value";

content
--3eeaadbfda0441b8be821bbed2962e4d--

但实际上它看起来像这样:

--3eeaadbfda0441b8be821bbed2962e4d
Content-Disposition: form-data; name="file"; filename="file"
Content-Type: text/plain

content
--3eeaadbfda0441b8be821bbed2962e4d--

我正在使用此功能:

response = requests.post('url', data, files=('file', 'file'))

1 个答案:

答案 0 :(得分:2)

是的,你可以,只需将带有元组的字典作为值传递给post方法。为此方法files指定requests参数时,请添加multipart/form-data标头。但是你可以自由地将带有元组的字典作为files传递:

url = 'http://httpbin.org/post' 
files = {'file': (None, 'some,data,to,send\nanother,row,to,send\n')}
r = requests.post(url, files=files) 

http://docs.python-requests.org/en/latest/user/quickstart/#post-a-multipart-encoded-file