python实现 文件+参数 发送request

Posted 测试baby

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python实现 文件+参数 发送request相关的知识,希望对你有一定的参考价值。

需求:

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

在这里插入图片描述

根据python中的request源代码,可知,发送一个request,可以传递的参数有很多。而我们这次主要用到的就是files,当然method、url、headers、及data/json也是每次发送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. 发送请求结束后,应立刻关闭文件
  4. content-type为form-data,request语句中应注意是data=data,若content-type为application/json等,则是json=data
  5. 试着去读一读看看源码
  6. 如果多次需要上传文件,不妨把#主要实现方式#里的代码封装起来,方便以后调用

最后:凡事要趁早,特别是技术行业,一定要提升技术功底。

其实每个程序员也能意识到目前自己面临的窘境,但能够及时作出改变,顺应时代变化的人太少了。毕竟更多人的情况是,忙着上班,也没人引路,自己也不太会规划。多数人明明“泰山崩于前,而面色如土”只能眼睁睁看着自己被行业淘汰吗?

在这里插入图片描述
这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!

关注我的微信公众号:【伤心的辣条】免费获取~

我的软件测试学习交流群:902061117 群里有技术大牛一起交流分享~

如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!

好文推荐:

35岁之后软件测试工程师靠什么养家?我能继续做测试!

App公共测试用例梳理

Python简单?先来40道基础面试题测试下

阿里二黑叹息:越来越多的年轻人从职场撤退了?

从一名开发人员转做测试的一些感悟

以上是关于python实现 文件+参数 发送request的主要内容,如果未能解决你的问题,请参考以下文章

python+requests接口自动化4. 接口实现文件(图片)上传

[转]python的requests发送/上传多个文件

python的requests发送/上传多个文件

Python-爬虫-requests库用语post登录

Python接口测试-使用requests模块发送GET请求

python+requests——发送带参数的get请求