python-上传文件的几种方式
第一种:
from requests_toolbelt import MultipartEncoder
import requests# from_data上传文件,注意参数名propertyMessageXml
data = MultipartEncoder(fields={'propertyMessageXml': ('filename', open('D:/123.xml', 'rb'), 'text/xml')})
requests.post(url=url,data=data,headers={ 'Content-Type': data.content_type})#raw上传文件
file = open('D:/123.xml','rb')
requests.post(url=url,data=file.read(),headers={'Content-Type':'text/xml'})#binary上传文件
files={'file':open('D:/123.xml','rb')}
requests.post(url=url,files=files,headers={'Content-Type':'binary'})
第二种:
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
import requests,glob
from urllib3 import encode_multipart_formdatadef upload_file(url=None,path=None,file_path=None):if path:for file_path in glob.glob(path + '\*'): #批量文件data={}data['file'] = (file_path.split("/")[-1], open(file_path, 'rb').read()) # 名称,读文件encode_data = encode_multipart_formdata(data)res = requests.post(url, headers={'Content-Type':encode_data[1]},data=encode_data[0])return res.textif file_path:data = {}data['file'] = (file_path.split("/")[-1], open(file_path, 'rb').read()) # 名称,读文件encode_data = encode_multipart_formdata(data)res = requests.post(url, headers={'Content-Type': encode_data[1]}, data=encode_data[0])return res.text
python-上传文件的几种方式相关推荐
- django + python上传文件的两种方式
突然心血来潮,研究了下django+python上传文件的两种方式. 第一:直接采用文件读写的方式上传 1. settings.py文件中设置文件的存放路径和文件读取路径 MEDIA_ROOT = o ...
- django文件上传到服务器,django上传文件的三种方式
Django文件上传需要考虑的重要事项 文件或图片一般通过表单进行.用户在前端点击文件上传,然后以POST方式将数据和文件提交到服务器.服务器在接收到POST请求后需要将其存储在服务器上的某个地方.D ...
- vue前端实现上传文件的两种方式
1.使用form表单的形式 第一种方式就是使用FormData的方式进行上传 html代码: <el-form :model="upform" :rules="up ...
- flask中使用FileField上传文件的两种方式+前端页面上传文件(flask三种上传文件方式)
文章目录 上传文件方式一: 1.index.html文件: 2.主文件main.py: 上传文件方式二: 1.index2.html文件: 2.main.py文件: 上传文件方式三: 1.index3 ...
- java spring上传_SpringMVC上传文件的三种方式
直接上代码吧,大伙一看便知 前台: pageEncoding="utf-8"%> Insert title here 采用流的方式上传文件 采用multipart提供的fil ...
- SpringMVC上传文件的三种方式
/** 通过流的方式上传文件* @RequestParam("file") 将name=file控件得到的文件封装成CommonsMultipartFile 对象*/@Reques ...
- LayUI upload上传组件上传文件的两种方式(手动上传、自动上传)
1 手动上传 上传文件分为两步,第一步选择文件,第二步上传文件. HTML代码: <input type='button' id='selectFile' value='选择文件'> &l ...
- WebUploader 上传文件的两种方式(手动上传,自动上传)
1 手动上传 上传文件分为两步,第一步选择文件,第二步上传文件. HTML代码: <input type='button' id='selectFile' value='选择文件'> &l ...
- Linux远程上传文件的三种方式详解
1.FileZilla(直接拖) https://www.filezilla.cn/download/client 2.lrzsz 2.1.yum install lrzsz 2.2.在CRT中配置上 ...
- vue+axios上传文件的几种方式及步骤(以上传图片为例)
1.用js的formData对象上传(服务器返回url地址) <input class="file" name="file" type="fil ...
最新文章
- WCF入门(一)——简单的示例
- 如何定制一款12306抢票浏览器——完结篇
- 手撕ArrayList底层,透彻分析源码
- 完课率最高 | 带学吴恩达《机器学习》课程和作业,带打Kaggle全球顶级大赛!...
- oracle中 使用不了,Oracle 中不使用NOT IN 和 NOT EXISTS的另一种方法
- linux: 命令行运行php Run PHP from the command line
- CentOS6.4x64_安装Qt5
- iOS:×××送(二)----pem证书的生成
- Sql Server 语句集合
- DelphiXE4发布了
- 【转】使用Boost Graph library(二)
- Hive 求全局Top N
- echarts 动态设置y轴单位_Recharts动态设置y轴的最大值最小值
- mysql驱动5.1_mysql jdbc 驱动 5.1.26 官方最新版
- hadoop工作原理
- [原创]我的网名卖烧烤的鱼缘由^_^
- matlab符号计算求解正态分布问题
- 用C语言实现base64解密(包括二进制文件)
- js-打印1-100以内的质数(素数)
- 【Python】Wordcloud 词云