• python使用post方式上传文件


    前言:由于项目需求做的接口测试有上传文件这一要求,在查资料时候发现用requests来做上传文件很简单,所以下了这个库来完成。后续有时候会看看能不能用传统地urllib2来做。

    首先你要有个requests:

    https://github.com/kennethreitz/requests

    然后把它import进来

    接着:

    def post(self,url,param_dict,param_header,file = '',param_type = 'x-www-form-urlencode'):
      '''
      @功能:封装post方式
      @paramType:指传入参数类型,可以是form-data、x-www-form-urlencode、json
      '''
      respone_code = None
      respone = None
      try:
        if param_type == 'x-www-form-urlencode':
          params = param_dict
        elif param_type == 'json':
          params = json.dumps(param_dict)
        if file == '' :
          ret = requests.post(self.Server+url, data=params, headers=param_header)
        else:

          files = {'file':open(file,'rb')}
          ret = requests.post(self.Server+url, data=params, headers=param_header,files = files)
        respone_code = ret.status_code
        respone = ret.text
      except requests.HTTPError, e:
        respone_code = e.getcode()
        respone = e.read().decode("utf-8")

      return respone_code,respone

    另外附上http://blog.csdn.net/iloveyin/article/details/21444613,这个博客很详细地介绍了requests这个库的使用方法

  • 相关阅读:
    线程安全 ---Struts1与Struts2
    sql servset 有表,没表备份数据。
    group by 使用及体会 和having用法
    js 去掉输入的空格
    struts + json + ajax +级联 例子
    js 级联 思路
    return break continue 的用法和作用
    eclise 怎么集成 spket 。及spket 与 sdk.jsb3管理起来
    logback基本用法
    log4j:特定类的日志输出到指定的日志文件中
  • 原文地址:https://www.cnblogs.com/tanliyu/p/4460767.html
Copyright © 2020-2023  润新知