python+requests接口自动化--请求方法封装

摘要:
1来自common.loggerimportLog3来自commonimportcof4来自commonimportbase567classMyHttpservice(对象):89def__init__(self):10self.url=cof.get_host1()11self.log=log()1213defget(self,**kwargs)
 1 import requests
 2 from common.logger import Log
 3 from common import cof
 4 from common import base
 5 
 6 
 7 class MyHttpservice(object):
 8 
 9     def __init__(self):
10         self.url = cof.get_host1()
11         self.log = Log()
12 
13     def get(self,**kwargs):
14         '''封装get方法'''
15         params = kwargs.get("params")
16         headers = kwargs.get("headers")
17         try:
18             res = requests.get(self.url,params=params,headers=headers)
19             self.log.info("测试接口:%s" %base.get_url(route))
20             self.log.info("响应的内容:%s" %res.json())
21             self.log.info("返回的状态码:%s" % res.status_code)
22             return res
23         except Exception as e:
24             print("get请求错误: %s" %e)
25 
26     def post(self,url,**kwargs):
27         '''封装post方法'''
28         params = kwargs.get("params")
29         data = kwargs.get("data")
30         json = kwargs.get("json")
31         files = kwargs.get("files")
32         try:
33             res = requests.post(url,params=params,data=data,json=json,files=files)
34             self.log.info("响应的内容:%s" %res.json())
35             self.log.info("返回的状态码:%s" % res.status_code)
36             return res
37         except Exception as e:
38             print("post请求错误: %s" %e)
39 
40     def delete(self,url,**kwargs):
41         '''封装delete方法'''
42         params = kwargs.get("params")
43         data = kwargs.get("data")
44         json = kwargs.get("json")
45         files = kwargs.get("files")
46         try:
47             res = requests.delete(url,params=params,data=data,json=json,files=files)
48             self.log.info("响应的内容:%s" %res.json())
49             self.log.info("返回的状态码:%s" % res.status_code)
50             return res
51         except Exception as e:
52             print("post请求错误: %s" %e)
53 
54     def put(self, url, **kwargs):
55         '''封装put方法'''
56         params = kwargs.get("params")
57         data = kwargs.get("data")
58         json = kwargs.get("json")
59         files = kwargs.get("files")
60         try:
61             res = requests.put(url, params=params, data=data, json=json, files=files)
62             self.log.info("响应的内容:%s" % res.json())
63             self.log.info("返回的状态码:%s" % res.status_code)
64             return res
65         except Exception as e:
66             print("post请求错误: %s" % e)

免责声明:文章转载自《python+requests接口自动化--请求方法封装》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Python 批量插入ESES6之6种遍历对象属性的方法下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

squid 访问日志记录

squid日志记录在squid.conf 也可记录。并且squid日志可以不记录静态项 在squid.conf 加入 (1)access_log /var/log/squid/access.log  squid        #定义日志存放记录 (2)不记录静态加入 acl nolog urlpath_regex -i .css .js .swf .jpg...

Python_实现json数据的jsonPath(精简版)定位及增删改操作

基于python实现json数据的jsonPath(精简版)定位及增删改操作   by:授客QQ:1033553122     实践环境 win7 64 Python 3.4.0   代码 #-*- encoding:utf-8 -*-   # author:授客   importre   defparse_sub_expr(sub_e...

Python统计分析可视化库seaborn(相关性图,变量分布图,箱线图等等)

Visualization of seaborn  seaborn[1]是一个建立在matplot之上,可用于制作丰富和非常具有吸引力统计图形的Python库。Seaborn库旨在将可视化作为探索和理解数据的核心部分,有助于帮人们更近距离了解所研究的数据集。无论是在kaggle官网各项算法比赛中,还是互联网公司的实际业务数据挖掘场景中,都有它的身影。   ...

android之APN

APN全称是Access Point Name,中文即接入点,是通过手机上网时必须配置的一个参数,它决定了手机通过哪种接入方式来访问网络。 android系统把所有的APN都保存在数据库中,数据库绝对路径:/data/data/com.android.providers.telephony/databases/telephony.db。 使用adb命令可以...

MongoDB的安装与使用

  MongoDB是一款NoSql数据库。NoSql数据库叫非关系型数据库,NoSql的全名Not only sql。是为了解决高并发、高可用、高可扩展,以及大数据存储等一系列问题而产生的数据库解决方案。NoSql,它不能替代关系型数据库,只能作为关系型数据库的一个良好补充。   NoSql数据库又分为多种,如键值(Key-Value)存储数据库(如red...

iOS开发之—— 加密使用(MD5,base64,DES,AES)

基本的单向加密算法: BASE64 严格地说,属于编码格式,而非加密算法 MD5(Message Digest algorithm 5,信息摘要算法)SHA(Secure Hash Algorithm,安全散列算法)HMAC(Hash Message Authentication Code,散列消息鉴别码) MD5、SHA、HMAC这三种加密算法,可谓是非...