Python使用requests库post文件multipart编码格式

步骤

  • 构造要发送的文件数据元组,可一次发送多个文件
  • 调用requests.post发出文件
url = 'https://xxxx.org/'
multiple_files = [
    ('images', ('1.png', open('foo.png', 'rb'), 'image/png')),
    ('images', ('2.png', open('bar.png', 'rb'), 'image/png'))]
r = requests.post(url, files=multiple_files)

文件数据元组参数说明:(http标签,(文件名,open文件,文件MIME格式)

注意不要自己在头部添加Content-Type: multipart/form-data;,因为这会妨碍requests库post时自动填充的Content-Type,正确的Content-Type是有每次随机生成用来标记传输的文件内容边界的boundary,如下:

POST /adapter/device/file
Authorization: e7ca4e6de6d8eaef34663958ccf3e072
Version: v1.0
Content-Disposition: form-data; description=[{“file_name”:”test.txt”,type:”sample”,”event_id”:”b5ca87aaaa”}] Host: xx.xx.xx.xx
Accept-Encoding: gzip,deflate,br
Connection: keep-alive
Content-Type: multipart/form-data; boundary=------------- ac83f6b00d
Content-Length: 530

-------------ac83f6b00d
Content-Disposition: form-data; description=xxx NTY3NGRlZDA5OWY3NzdiNThkYThjOGEyYTUwNjk3YWM4M2Y2YjAwZCAgY3NvYy13ZWItYmFja2VuZ
C5qYXIK 

-------------ac83f6b00d
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
引用提供了一种在Python3下使用requests发送multipart/form-data类型请求的方法。这种类型的请求是用于上传文件或发送二进制数据的常见方式。通过使用requestspost方法,将请求的URL和请求的参数以字典的形式传入即可发送multipart/form-data类型的请求。引用介绍了使用requests发送application/x-www-form-urlencoded请求数据的方法。这种类型的请求常用于提交表单数据。通过使用requestspost方法,将请求的URL和请求的参数以字典的形式传入即可发送application/x-www-form-urlencoded类型的请求。引用给出了一个示例函数client_post_mutipart_formdata_requests,该函数可以用于发送multipart/form-data类型的请求,并接收请求的URL和请求的参数作为参数。综上所述,要使用Pythonrequests发送multipart/form-data类型的请求,可以使用post方法,并将请求的URL和请求的参数以字典的形式传入。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [python使用requests发送multipart/form-data请求数据](https://blog.csdn.net/weixin_39638048/article/details/110763239)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值