利用 python requests完成接口文件上传

最近在准备一个公开课,主题就是利用不同的语言和不同的工具去实现文件的上传和下载。

在利用Jmeter去实现功能的时候,以及利用loadrunner去写脚本的时候,都很顺利,没有任何问题,当我尝试用Python去解决这个问题的时候,花了一些时间。

这也让我在学习和尝试中,找到了很多乐趣,下面给大家分享下,如何去实现操作。

 

前提:

1:有一个上传接口,地址如下:http://xx.xx.xx.xx//upload/stream(公司的服务,地址不便外发~有兴趣的同志可以来看我们的公开课!)

2:上传接口的参数如下所示:

{"parentId":"","fileCategory":"personal","fileSize":179,"fileName":"summer_text_0920.txt","uoType":1}

其中有两个参数需要跟大家解释一下:filesize:指的是文件的字节大小。 filename:指的是你上传之后保存的文件名~记得不要搞错了后缀哟。其他的参数可以忽略,在做自己公司接口的时候,就按照自己公司的接口文档去做即可。

开始操作:

1:安装requests模块,安装命令:pip install requests

2:发送请求,代码如下所示:

header={"ct":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9"}
files = {'file':open('D:\\test_data\\summer_test_data_05.txt','rb')}
#此处是重点!我们操作文件上传的时候,把目标文件以open打开,然后存储到变量file里面存到一个字典里面 upload_data={"parentId":"","fileCategory":"personal","fileSize":179,"fileName":"summer_text_0920.txt","uoType":1} upload_res=requests.post(upload_url,upload_data,files=files,headers=header)
##此处是重点!我们操作文件上传的时候,接口请求参数直接存到upload_data变量里面,在请求的时候,直接作为数据传递过去

 

查看结果:

执行完代码后,看到我们上传成功,效果如下:

 

 大家如果有上传文件的接口,赶紧去试试吧!

学习了代码后,有些事情就会显得轻松多啦!

 

posted @ 2018-09-19 20:08  华妹陀  阅读(44405)  评论(4编辑  收藏  举报