Requests发送MultiPart/Form-Data
requests是python中比较好用的一个网络访问库,号称“http for human”,以人类方便理解的方式进行网络访问,今天恰巧遇到了一个问题,打算用requests的库post一个文件到服务器,看了半天文档,发现requests不支持MultiPart/Form-Data这个东西,需要使用另外一个库requests-toolbelt,所以这里记一下。
一、安装相关包
pip install requests
pip install requests-toolbelt
二、使用代码
# 代码未验证
from requests_toolbelt import MultipartEncoder
import requests
m = MultipartEncoder(
fields={'field0': 'value', 'field1': 'value',
'field2': ('filename', open('file.py', 'rb'), 'text/plain')}
)
r = requests.post('http://httpbin.org/post', data=m,
headers={'Content-Type': m.content_type})