我们在做自动化的时候,肯定是代码越简洁越好,代码重复量越少越好,这里呢,我们可以通过把requests的请求类型都封装起来,这样编写用例的时候可以直接进行请求

requests方法封装

我们通常用的最多的是get和post请求类型,就先拿这两个请求进行举例写一些个人的思路(大佬勿喷!!!)

1、创建一个类,把get请求和post请求分别写成一个方法。方便调用

2、每个请求的参数可能不同,这个我们需要全部涉及到,可以通过**kwargs进行添加。

3、新建一个运行方法,判断请求类型。

import requests

class TestRequests():
def get(self,**kwargs): '''封装get方法'''
# 获取请求参数
params = kwargs.get("params")
headers = kwargs.get("headers")
url = kwargs.get('url')
try:
result = requests.get(url=url,params=params,headers=headers)
return result
except Exception as e:
print("get请求错误: %s" %e) def post(self,url,**kwargs):
'''封装post方法'''
# 获取请求参数
params = kwargs.get("params")
data = kwargs.get("data")
json = kwargs.get("json")
files = kwargs.get("files")
try:
result = requests.post(url,params=params,data=data,json=json,files=files)
return result
except Exception as e:
print("post请求错误: %s" %e) def run_main(self, method, **kwargs):
'''
判断请求类型
:param method: 请求接口类型
:param kwargs: 填参数
:return: 接口返回内容
'''
if method == 'get':
result = self.get(**kwargs)
return result
elif method == 'post':
result = self.post(**kwargs)
return result
else :
print('请求接口类型错误') if __name__ == '__main__':
x =TestRequests()
result =x.run_main('post',url='http://apis.juhe.cn/simpleWeather/query',data={'key':'331eab8f3481f37868378fcdc76cb7cd','city':'上海'})
print(result.json())

通过执行后,直接可以看到已经请求成功了。后续可以直接通过调取方法,直接进行使用

安静简单的对requests请求类型进行封装,如果那里有不对的或者不懂的地方,可以直接下方留言,看到后第一时间回复~~

大佬们也可以帮助安静优化下代码哈~~共同学习,共同进步~~

requests---requests封装请求类型的更多相关文章

  1. Python 使用 requests 模块发送请求的使用及封装

    一.requests 模块基本使用 1.准备接口的URL.请求参数.请求头 # 1. 构造注册.登录.充值请求的url register_url = "注册url" login_u ...

  2. 第四十节,requests模拟浏览器请求模块初识

    requests模拟浏览器请求模块初识  requests模拟浏览器请求模块属于第三方模块 源码下载地址http://docs.python-requests.org/zh_CN/latest/use ...

  3. Python-网络爬虫模块-requests模块之请求

    Python原生库urllib库不太方便使用,本着"人生苦短, 我用Python"的珍惜生命精神, 基于urllib, 开发了一个对人类来说, 更好使用的一个库——requests ...

  4. Python 2.7.x 使用Requests发起https请求时报Warning的问题

    warning :如下 /usr/local/lib/python2.7/dist-packages/requests/packages/urllib3/connectionpool.py:852: ...

  5. 爬虫——控制台抓包和requests.post()发送请求

    控制台抓包 打开方式及常用选项 1.打开浏览器,F12打开控制台,找到Network选项卡 2.控制台常用选项 1.Network: 抓取网络数据包 1.ALL: 抓取所有的网络数据包 2.XHR:抓 ...

  6. 接口自动化--requests库封装

    前言 不管是自动化大佬还是自动化小白,都知道我们用python写接口自动化测试肯定是要用requests库来封装请求类的,下面就简单介绍下requests这个库 安装 一般都是直接采用pip命令安装: ...

  7. requests模拟浏览器请求模块初识

    requests模拟浏览器请求模块初识  一.下载 requests模拟浏览器请求模块属于第三方模块 源码下载地址http://docs.python-requests.org/zh_CN/lates ...

  8. python requests函数封装方法

    python  requests函数封装方法 上代码 import requests import json """ 封装request请求, 1.post:my_pos ...

  9. 【Python】 requests 各种参数请求的方式

    Python使用requests发送post请求 1.我们使用postman进行接口测试的时候,发现POST请求方式的编码有3种,具体的编码方式如下: A:application/x-www-form ...

随机推荐

  1. java 对图片的添加文字描述,以及两张图片合成一张

    最近公司一个需要,需要把商品的优惠卷分享链接,生成一个二维码然后和商品主图合成一张,并且在新合成的主图增加商品信息的描述,好了直接看合成后图片的样式 下面我就直接贴代码,首先是Contorller层 ...

  2. Hadoop之伪分布式安装

    一.Hadoop的安装模式有3种 ①单机模式:不能使用HDFS,只能使用MapReduce,所以单击模式主要用于测试MR程序. ②伪分布式模式:用多个线程模拟真实多台服务器,即模拟真实的完全分布式环境 ...

  3. Oracle 设置NLS_CHARACTERSET字符集

    Oracle 设置NLS_CHARACTERSET字符集 sqlplus "/ as sysdba"SQL> SHUTDOWN IMMEDIATE;SQL> START ...

  4. Fluent_Python_Part3函数即对象,07-closure-decoration,闭包与装饰器

    第7章 函数装饰器和闭包 装饰器用于在源码中"标记"函数,动态地增强函数的行为. 了解装饰器前提是理解闭包. 闭包除了在装饰器中有用以外,还是回调式编程和函数式编程风格的基础. 1 ...

  5. cf 908B

    B - New Year and Buggy Bot 思路:刚开始看到这个题的时候,一头雾水,也不知道要干什么,后来百度翻译了了一遍,看明白了,不得不说自己的英语太差了,好了,步入正题: 给你n行m列 ...

  6. ETCD的常用命令

    Note that any key that was created using the v2 API will not be able to be queried via the v3 API. A ...

  7. 25 JavaScript对象原型&ES5新的对象方法

    JavaScript对象原型 所有JavaScript对象都从原型继承对象和方法 日期对象继承自Date.prototype,数组继承自Array.prototype,对象构造器新建的对象Person ...

  8. JAVA接口测试类

    package etcom.servlet; import java.io.BufferedReader; import java.io.InputStreamReader; import java. ...

  9. 【原】mac电脑使用总结

    mac下终端配置(item2+oh-my-zsh)+solarized配色方案:https://www.cnblogs.com/weixuqin/p/7029177.html

  10. python调用os模块锁定用户

    import timeimport osuser_info = { 'mac': {'pwd': '123', 'count': 0, 'locked': False}, 'tank': {'pwd' ...