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使用py2exe打包程序介绍
Nov 20 Python
Python中使用不同编码读写txt文件详解
May 28 Python
python自动登录12306并自动点击验证码完成登录的实现源代码
Apr 25 Python
Python多进程写入同一文件的方法
Jan 14 Python
对python中if语句的真假判断实例详解
Feb 18 Python
python使用thrift教程的方法示例
Mar 21 Python
python3爬虫学习之数据存储txt的案例详解
Apr 24 Python
python开发之anaconda以及win7下安装gensim的方法
Jul 05 Python
Python3 解决读取中文文件txt编码的问题
Dec 20 Python
tensorflow -gpu安装方法(不用自己装cuda,cdnn)
Jan 20 Python
python3 deque 双向队列创建与使用方法分析
Mar 24 Python
python程序输出无内容的解决方式
Apr 09 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 万年历实现代码
2012/10/18 PHP
php自定义截取中文字符串-utf8版
2017/02/27 PHP
thinkphp5.0整合phpsocketio完整攻略(绕坑)
2018/10/12 PHP
Laravel 修改默认日志文件名称和位置的例子
2019/10/17 PHP
javascript拓展DOM操作 prependChild insertAfert
2010/11/17 Javascript
js 链式延迟执行DOME
2012/01/04 Javascript
js实现瀑布流的一种简单方法实例分享
2013/11/04 Javascript
浅谈javascript六种数据类型以及特殊注意点
2013/12/20 Javascript
基于jQuery实现文本框缩放以及上下移动功能
2014/11/24 Javascript
深入分析js的冒泡事件
2014/12/05 Javascript
javascript手工制作悬浮菜单
2015/02/12 Javascript
javascript制作网页图片上实现下雨效果
2015/02/26 Javascript
jQuery实现图片与文字描述左右滑动自动切换的方法
2015/07/27 Javascript
AngularJS中的promise用法分析
2017/05/19 Javascript
webpack构建换肤功能的思路详解
2017/11/27 Javascript
原生JS实现循环Nodelist Dom列表的4种方式示例
2018/02/11 Javascript
搭建一个nodejs脚手架的方法步骤
2019/06/28 NodeJs
聊聊鉴权那些事(推荐)
2019/08/22 Javascript
Vue快速实现通用表单验证的方法
2020/02/24 Javascript
js实现文字头像的生成代码
2020/03/07 Javascript
Vue+tracking.js 实现前端人脸检测功能
2020/04/16 Javascript
vue+element实现图片上传及裁剪功能
2020/06/29 Javascript
python cx_Oracle的基础使用方法(连接和增删改查)
2017/11/19 Python
python实现大战外星人小游戏实例代码
2019/12/26 Python
python和js交互调用的方法
2020/06/23 Python
业务部主管岗位职责
2014/01/29 职场文书
爱岗敬业事迹材料
2014/12/24 职场文书
毕业实习计划书
2015/01/16 职场文书
2015年护士节活动总结
2015/02/10 职场文书
2015年乡镇科普工作总结
2015/05/13 职场文书
入党积极分子培养联系人意见
2015/08/12 职场文书
教师节随笔
2015/08/15 职场文书
2015年十月一日放假通知
2015/08/18 职场文书
MySQL中出现乱码问题的终极解决宝典
2021/05/26 MySQL
Django+Nginx+uWSGI 定时任务的实现方法
2022/01/22 Python
SQL Server中T-SQL标识符介绍与无排序生成序号的方法
2022/05/25 SQL Server