python处理multipart/form-data的请求方法


Posted in Python onDecember 26, 2018

方法1:

import requests
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)
print res.request.body
print res.request.headers

方法2:

安装requests_toolbelt

pip install requests-toolbelt

实现代码

a.发送文件中的数据

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})

b.不需要文件

from requests_toolbelt import MultipartEncoder
import requests
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的请求方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python之PyUnit单元测试实例
Oct 11 Python
深入学习python的yield和generator
Mar 10 Python
pygame游戏之旅 添加游戏界面按键图形
Nov 20 Python
学习python可以干什么
Feb 26 Python
python实现向微信用户发送每日一句 python实现微信聊天机器人
Mar 27 Python
解决使用export_graphviz可视化树报错的问题
Aug 09 Python
Python3 翻转二叉树的实现
Sep 30 Python
Python中Flask-RESTful编写API接口(小白入门)
Dec 11 Python
opencv+python实现均值滤波
Feb 19 Python
Pycharm配置lua编译环境过程图解
Nov 28 Python
基于PyQT5制作一个桌面摸鱼工具
Feb 15 Python
Python学习之包与模块详解
Mar 19 Python
Python实现的简单线性回归算法实例分析
Dec 26 #Python
Python基于聚类算法实现密度聚类(DBSCAN)计算【测试可用】
Dec 26 #Python
python使用knn实现特征向量分类
Dec 26 #Python
python调用staf自动化框架的方法
Dec 26 #Python
Django unittest 设置跳过某些case的方法
Dec 26 #Python
python 2.7 检测一个网页是否能正常访问的方法
Dec 26 #Python
在python中使用requests 模拟浏览器发送请求数据的方法
Dec 26 #Python
You might like
php中几种常见安全设置详解
2010/04/06 PHP
神盾加密解密教程(三)PHP 神盾解密工具
2014/06/08 PHP
Firefox outerHTML实现代码
2009/06/04 Javascript
HTML上传控件取消选择
2013/03/06 Javascript
js判断选择时间不能小于当前时间的示例代码
2013/09/24 Javascript
利用jQuery简单实现产品展示图片左右滚动功能(示例代码)
2014/01/02 Javascript
js实现延时加载Flash的方法
2015/11/26 Javascript
javascript时间排序算法实现活动秒杀倒计时效果
2021/01/28 Javascript
Vue.js每天必学之Class与样式绑定
2016/09/05 Javascript
完美解决spring websocket自动断开连接再创建引发的问题
2017/03/02 Javascript
layui在form表单页面通过Validform加入简单验证的方法
2019/09/06 Javascript
vue项目中监听手机物理返回键的实现
2020/01/18 Javascript
微信小程序如何实现radio单选框单击打勾和取消
2020/01/21 Javascript
原生javascript中this几种常见用法总结
2020/02/24 Javascript
利用QT写一个极简单的图形化Python闹钟程序
2015/04/07 Python
基于Python os模块常用命令介绍
2017/11/03 Python
Python实现JSON反序列化类对象的示例
2018/01/31 Python
python 随机打乱 图片和对应的标签方法
2018/12/14 Python
python+selenium实现自动化百度搜索关键词
2019/06/03 Python
Python通过两个dataframe用for循环求笛卡尔积
2020/04/29 Python
Keras 快速解决OOM超内存的问题
2020/06/11 Python
Python socket服务常用操作代码实例
2020/06/22 Python
利用CSS3实现进度条的两种姿势详解
2017/03/21 HTML / CSS
css3实现蒙版弹幕功能
2019/06/18 HTML / CSS
俄罗斯珠宝市场的领导者之一:Бронницкий ювелир
2019/10/02 全球购物
Kiwi.com中国:找到特价机票并发现新目的地
2019/10/27 全球购物
迎八一活动主题
2014/01/31 职场文书
《爱的教育》读书心得
2014/11/08 职场文书
2014年质检工作总结
2014/11/26 职场文书
求职导师推荐信范文
2015/03/27 职场文书
《藏戏》教学反思
2016/02/23 职场文书
《水浒传》读后感3篇(范文)
2019/09/19 职场文书
python 下划线的多种应用场景总结
2021/05/12 Python
详解PHP服务器如何在有限的资源里最大提升并发能力
2021/05/25 PHP
Win11 BitLocker 驱动器加密
2022/04/19 数码科技