前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >接口-Requests-类封装Get/Post请求

接口-Requests-类封装Get/Post请求

作者头像
wangmcn
发布2022-07-25 14:04:39
3910
发布2022-07-25 14:04:39
举报
文章被收录于专栏:AllTests软件测试

类封装Get/Post请求

1、方式一

1、引入Requests库

import requests

2、引入Json库

import json

3、创建RunMain类,将接下来封装的方法写到此类里

class RunMain

4、GET请求方法

def send_get(self,url,data):

res = requests.get(url=url,params=data).json()

return json.dumps(res,indent=2,sort_keys=True)

5、POST请求方法

def send_post(self,url,data):

res = requests.post(url=url,data=data).json()

return json.dumps(res,indent=2,sort_keys=True)

6、封装GET/POST(运行时调用此方法,根据是'GET'或'POST'再去调用相应的请求方法)

def run_main(self,method,url,data=None):

if method == 'GET':

res = self.send_get(url,data)

elif method == 'POST':

res = self.send_post(url,data)

return res

7、程序入口

if __name__ == '__main__':

8、调用执行GET请求

run = RunMain()

url = 'http://httpbin.org/get'

data = {

'name': 'admin',

'age': 20

}

print(run.run_main('GET',url,data))

9、调用执行POST请求

url = 'http://httpbin.org/post'

data = {

'userid': 'admin',

'pwd': '123456',

'date': '20180725'

}

print(run.run_main('POST',url,data))

10、脚本代码:

代码语言:javascript
复制
#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
类封装GET请求、POST请求
"""
# 引入Requests库
import requests
# 引入Json库
import json

class RunMain:

    # GET请求
    def send_get(self,url,data):
        res = requests.get(url=url,params=data).json()
        return json.dumps(res,indent=2,sort_keys=True)

    # POST请求
    def send_post(self,url,data):
        res = requests.post(url=url,data=data).json()
        return json.dumps(res,indent=2,sort_keys=True)

    # 封装GET/POST
    def run_main(self,method,url,data=None):
        if method == 'GET':
            res = self.send_get(url,data)
        elif method == 'POST':
            res = self.send_post(url,data)
        return res

if __name__ == '__main__':
    run = RunMain()
    url = 'http://httpbin.org/get'
    data = {
        'name': 'admin',
        'age': 20
    }
    print(run.run_main('GET',url,data))

    url = 'http://httpbin.org/post'
    data = {
        'userid': 'admin',
        'pwd': '123456',
        'date': '20180725'
    }
    print(run.run_main('POST',url,data))

11、运行结果:

GET:

POST:

2、方式二

1、引入Requests库

import requests

2、引入Json库

import json

3、创建RunMain类,将接下来封装的方法写到此类里

class RunMain

4、GET请求方法

def send_get(self,url,data):

res = requests.get(url=url,params=data).json()

return json.dumps(res,indent=2,sort_keys=True)

5、POST请求方法

def send_post(self,url,data):

res = requests.post(url=url,data=data).json()

return json.dumps(res,indent=2,sort_keys=True)

6、封装GET/POST(根据是'GET'或'POST'再去调用相应的请求方法)

def run_main(self,method,url,data=None):

if method == 'GET':

res = self.send_get(url, data)

elif method == 'POST':

res = self.send_post(url, data)

return res

7、用于初始化类(调用RunMain类直接运行此方法,并执行run_main方法)

def __init__(self,method,url,data=None):

self.res = self.run_main(method,url,data)

8、程序入口

if __name__ == '__main__':

9、调用执行GET请求

url = 'http://httpbin.org/get'

data = {

'name': 'admin',

'age': 20

}

run = RunMain('GET',url,data)

print(run.res)

10、调用执行POST请求

url = 'http://httpbin.org/post'

data = {

'userid': 'admin',

'pwd': '123456',

'date': '20180725'

}

run = RunMain('POST',url,data)

print(run.res)

11、脚本代码:

代码语言:javascript
复制
#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
类封装GET请求、POST请求2
"""
# 引入Requests库
import requests
# 引入Json库
import json

class RunMain:

    # 初始化类
    def __init__(self,method,url,data=None):
        self.res = self.run_main(method,url,data)

    # GET请求
    def send_get(self,url,data):
        res = requests.get(url=url,params=data).json()
        return json.dumps(res,indent=2,sort_keys=True)

    # POST请求
    def send_post(self,url,data):
        res = requests.post(url=url,data=data).json()
        return json.dumps(res,indent=2,sort_keys=True)

    # 封装GET/POST
    def run_main(self,method,url,data=None):
        if method == 'GET':
            res = self.send_get(url, data)
        elif method == 'POST':
            res = self.send_post(url, data)
        return res

if __name__ == '__main__':
    url = 'http://httpbin.org/get'
    data = {
        'name': 'admin',
        'age': 20
    }
    run = RunMain('GET',url,data)
    print(run.res)

    url = 'http://httpbin.org/post'
    data = {
        'userid': 'admin',
        'pwd': '123456',
        'date': '20180725'
    }
    run = RunMain('POST',url,data)
    print(run.res)

12、运行结果:

GET:

POST:

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-01-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 AllTests软件测试 微信公众号,前往查看

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

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

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