脚本专栏 
首页 > 脚本专栏 > 浏览文章

python实现文件+参数发送request的实例代码

(编辑:jimmy 日期: 2025/11/6 浏览:3 次 )

需求:

  该接口,含两个参数,一个是file,一个是paperName。其中file为上传的文件。content-type为form-data。

python实现文件+参数发送request的实例代码

根据python中的request源代码,可知,发送一个request,可以传递的参数有很多。而我们这次主要用到的就是files,当然method、url、headers、及data/json也是每次发送request必备的。

python实现文件+参数发送request的实例代码

主要的实现方式:

# 用二进制的方式打开需上传的文件。

f = open(filename, "rb")
file = [
 ("file", (filename, f, "file/xlsx")) # 此处"file"为上传的参数名;filename可以为当前目录下的文件(仅文件名即可),也可以是其他目录下的文件(用相对路径)
]

实现代码:

f = open(filename, "rb")
file = [
 ("file", (filename, f, "file/xlsx")) 
]
filename = '../data/required_upload.xlsx' # 此处写的是放在data目录下的文件。如果是当前目录下的,直接'required_upload.xlsx'即可
response = request(method=method, url=url, headers=headers, files=file, data=data)
f.close()

总结tips:

1. 以二进制的方式打开文件,文件可以是file / img
2. 文件名如果非当前目录,则应使用相对路径
3. 发送请求结束后,应立刻关闭文件
6. content-type为form-data,request语句中应注意是data=data,若content-type为application/json等,则是json=data
4. 试着去读一读看看源码
5. 如果多次需要上传文件,不妨把#主要实现方式#里的代码封装起来,方便以后调用

上一篇:matplotlib 使用 plt.savefig() 输出图片去除旁边的空白区域
下一篇:为2021年的第一场雪锦上添花:用matplotlib绘制雪花和雪景
一句话新闻
高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。