前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python requests接口请求封装(一)

Python requests接口请求封装(一)

作者头像
王大力测试进阶之路
发布2019-10-25 17:50:55
2.2K0
发布2019-10-25 17:50:55
举报

案例一:

class RunMain():

    def send_post(self, url, data):  # 定义一个方法,传入需要的参数url和data
        # 参数必须按照url、data顺序传入
        result = requests.post(url=url, data=data).json()  # 因为这里要封装post方法,所以这里的url和data值不能写死
        res = json.dumps(result, ensure_ascii=False, sort_keys=True, indent=2)
        return res

    def send_get(self, url, data):
        result = requests.get(url=url, data=data)
        res = json.dumps(result, ensure_ascii=False, sort_keys=True, indent=2)
        return res

    def run_main(self, method, url=None, data=None):  # 定义一个run_main函数,通过传过来的method来进行不同的get或post请求
        result = None
        if method == 'post':
            result = self.send_post(url, data)
        elif method == 'get':
            result = self.send_get(url, data)
        else:
            print("method值错误!!!")
        return result


if __name__ == '__main__':  # 通过写死参数,来验证我们写的请求是否正确
    result = RunMain().run_main('post', 'http://127.0.0.1:8888/login', 'name=xiaoming&pwd=')
    print(result)

案例二:

import requests,urllib3
from common.readFile import ReadFile


class Request(object):
    """
    请求类
    """
    urllib3.disable_warnings()
    def __init__(self):
        pass

    def request(self, method, url, param, headers):
        """
        请求方法
        :param method:
        :param url:
        :param param:
        :param headers:
        :return:
        """
        try:
            if method == 'get' or method == 'GET' or method == 'Get':
                r = requests.get(url = url, headers=headers, json = param, verify=False)
                return r.json()
            elif method == 'post' or method == 'POST' or method == 'Post':
                r = requests.post(url = url, headers = headers, json = param, verify=False)
                return r.json()
            else:
                return "请求方式请传GET或POST"
        except Exception as e:
            return "request报错:{0}".format(e)


if __name__=='__main__':
    test = Request()
    test.request()
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-08-31,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 橙子探索测试 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档