码迷,mamicode.com
首页 > 编程语言 > 详细

Python3+requests+unittest+log+excel+HTMLTestRunner+email框架接口自动化案例⑷——获取header和requests请求封装

时间:2020-07-16 21:08:02      阅读:78      评论:0      收藏:0      [点我收藏+]

标签:类实例化   方法   charset   int   lte   eth   接口自动化   host   ken   

一、获取header方法

getheader.py

# _*_ coding:utf-8 _*_

import json,requests
from  Common import readConfig

def get_token():
    "获取登录token"
    login=readConfig.Read_Config()                                        #类实例化
    login_url = login.get_info(Login, login_host)                     #获取登录url
    headers = json.loads(login.get_info(Login, login_headers))        #登录headers
    data =json.loads(login.get_info(Login, login_account))            #登录账号、密码
    r = requests.request(POST, login_url, json=data, headers=headers)   #登录接口请求
    return r.json()[access_token]                                       #返回登录token

def host_headers():
    headers={}
    headers[x-key-hash]=readConfig.Read_Config().get_info(HTTP, x-key-hash)   #获取x-key-hash
    headers[Content-Type]=application/json;charset=utf-8                        #添加headers
    headers[Authorization]=Bearer +get_token()                                  #添加headers
    return headers

if __name__ == __main__:
    print(host_headers())

 

二、requests请求封装

configHttp.py

# _*_ coding:utf-8 _*_

import requests
from Common import getheader
from requests import exceptions

def req(method,url,**kwargs):
    "封装http请求方法"
    headers = getheader.host_headers()             #调用header方法
    try:
        result = requests.request(method,url,headers=headers,**kwargs)    #调用request方法
        return result
    except exceptions.Timeout:
        return {"请求超时"}
    except exceptions.InvalidURL:
        return {"非法url"}
    except exceptions.HTTPError:
        return {"http请求错误"}
    except Exception as e:
        return {"错误原因:%s" % e}

if __name__ == __main__:
    url=服务器地址
    params={"jobid":""}
    r=req(GET,url,params=params)
    print(r.json())

 

Python3+requests+unittest+log+excel+HTMLTestRunner+email框架接口自动化案例⑷——获取header和requests请求封装

标签:类实例化   方法   charset   int   lte   eth   接口自动化   host   ken   

原文地址:https://www.cnblogs.com/airb/p/13323641.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!