欢迎来到代码驿站!

Python代码

当前位置:首页 > 软件编程 > Python代码

python3 requests库文件上传与下载实现详解

时间:2021-04-29 10:58:08|栏目:Python代码|点击:

在接口测试学习过程中,遇到了利用requests库进行文件下载和上传的问题。同样,在真正的测试过程中,我们不可避免的会遇到上传和下载的测试。

文件上传:

url = ztx.host+'upload/uploadFile?CSRFToken='+self.getCSRFToken()#上传文件的接口地址
    header = {
        'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko',
        'Cookie':'JSESSIONID=535422F931158199018FE8D19620B9A1-n1.t2; SERVERID=cd7972e881cb9bd27adc12dbcf73adc1|'
          '1566374032|1566373045; loginWay_cookie=%7B%22index%22%3A%220%22%7D'
    }#上传文件请求的头信息
    data = {
        'md5_val':'ab91fd09413553e724311ec78217df55',
        'id':'WU_FILE_0',
        'name':'浙江省建设工程计价成果文件数据标准.doc',
        'type':'application/msword',
        # 'lastModifiedDate':'Mon Mar 11 16:21:05 UTC+0800 2019',
    }#上传文件的请求参数
    files = {
        'file':('浙江省建设工程计价成果文件数据标准.doc',#file是请求参数,要与接口文档中的参数名称一致
            open(r'C:\Users\Administrator\Desktop\浙江省建设工程计价成果文件数据标准.doc','rb'),#已二进制的形式打开文件
            'application/msword')#上传文件的MIME文件类型,这个必须要有
    }#上传的文件
    r = ztx.session.post(url=url,headers=header,data=data,files=files,verify=False)

注意:切记header头信息中不要添加Content-Type:xxxxxxx 这个字段,添加之后在发起请求的时候有可能找不到文件(希望大家避过这个坑)

下载文件:

下载文件相对稍微简单一点,请求类型为get请求

url = 'https://jypt.zhaotx.cn/upload/download/82F2413B8C13473AAECA512AA05124EA'
    r = ztx.session.get(url=url,stream=True,verify=False)#以流的形式进行下载文件
    if r.status_code ==200:#请求响应结果如果为200,将下载内容写入指定文件中
      with open(r'C:\Users\Administrator\Desktop\11.doc','wb') as f:
        for chunk in r.iter_content(chunk_size=1024):#循环写入,chunk_size是文件大小
          f.write(chunk)

上一篇:python实现获取单向链表倒数第k个结点的值示例

栏    目:Python代码

下一篇:python和c语言哪个更适合初学者

本文标题:python3 requests库文件上传与下载实现详解

本文地址:http://www.codeinn.net/misctech/111372.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有