python处理multipart/form-data的请求方法
方法1:
importrequests
url="http://www.xxxx.net/login"
#参数拼凑,附件上传格式如picurl参数,其他表单参数值拼成tuple格式:
2-tuples(filename,fileobj),
3-tuples(filename,fileobj,contentype),
4-tuples(filename,fileobj,contentype,custom_headers)
files={"username":(None,"billy"),"password":(None,"abcd1234"),
'picUrl':('pic.png',open('E:\\download\\pic.png','rb'),'image/png')}
#如需headers,不需要赋值Content-Type,不然可能会报错
res=requests.post(url,files=files)
printres.request.body
printres.request.headers
方法2:
安装requests_toolbelt
pipinstallrequests-toolbelt
实现代码
a.发送文件中的数据
fromrequests_toolbeltimportMultipartEncoder
importrequests
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})
b.不需要文件
fromrequests_toolbeltimportMultipartEncoder
importrequests
m=MultipartEncoder(fields={'field0':'value','field1':'value'})
r=requests.post('http://httpbin.org/post',data=m,
headers={'Content-Type':m.content_type})
以上这篇python处理multipart/form-data的请求方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。