python+requests练习篇2-上传图片或文件

本文介绍如何使用requests上传图片或文件


一般上传都需要使用到post请求,使用files参数上传图片或文件

请求data传参如下:
在这里插入图片描述

代码如下

# coding=utf-8
# 导入requests包
import requests

url = ""		#  上传文件的接口地址
header = {"Content-Type""", "Cookie":"" }	#  请求头部信息,大部分上传照片不要"Content-Type"值
data= {}	# data传参(部分接口需要data传参)

file_path = ""  # 图片或文件的绝对路径
file = {"multipartFile": ("a.jpg", open(file_path, "rb"), "image/jpeg")}  # "image/jpeg"照片格式
#file = {"multipartFile": ("产品导入.zip", open(path, "rb"), "application/zip")}	# "application/zip"zip格式

r = requests.post(url, headers=header, data=data, files=file)
print(r.json())	# 打印接口返回数据


继续优化下,上面代码运行后虽然上传图片成功,但是会报文件未关闭的错误。因此我们改造下,使用with方法打开,它会自动关闭。
代码如下:

# coding=utf-8
# 导入requests包
import requests

url = ""		#  上传文件的接口地址
header = {"Content-Type""", "Cookie":"" }	#  请求头部信息,大部分上传照片不要"Content-Type"值
data= {}	# data传参(部分接口需要data传参)

file_path = ""  # 图片或文件的绝对路径
with open(self.img_path, 'rb')as f:    # 使用with打开图片后自动关闭,直接用open后面会报未关闭图片错误
	file = {"multipartFile": ("a.jpg", f.read(), "image/jpeg")}  # "image/jpeg"照片格式
	#file = {"multipartFile": ("产品导入.zip", f.read(), "application/zip")}	# "application/zip"zip格式

r = requests.post(url, headers=header, data=data, files=file)
print(r.json())	# 打印接口返回数据

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值