首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

get/post请求的重构和封装

#!/usr/bin/env python

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

'''

1.重构get请求

2.重构post请求

3.定义一个方法管理get和post,传入方法,自动判断

4.定义一个类去管理这些方法

5.在类的构造方法里面调用run_main方法,实例化的时候即可执行

'''

importrequests

importjson

#创建RunMain类

classRunMain:

#在构造方法里面调用run_main,即实例化的时候自动调用run_main,不用再次执行

def__init__(self,url,method,data=None,cookies=None):

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

#对get请求进行重构

defsend_get(self,url,data=None):

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

res = res.text

returnres

#对post请求进行重构

defsend_post(self,url,data,cookies=None):

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

#对json进行格式化,前面加2个空格,排序

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

returnres

#使用run_main对get和post进行管理,传入方法,自动判断get和post

defrun_main(self,url,method,data=None,cookies=None):

res=None

ifmethod =='GET':

res =self.send_get(url,data)

else:

res =self.send_post(url,data,cookies)

returnres

#主函数入口

if__name__ =='__main__':

url ='https://demo3.appiron.cn:30443/emm-manager/'

url2 ='https://demo3.appiron.cn:30443/emm-manager/login/login.do'

#登录接口参数

data = {

'strname':'secadmin',

'strpwd':'50,140,65,112,51,22,108,98'

}

#登录需要的cookies,需要加到请求头里面去

cookies = {

'Cookie':'JSESSIONID=502C8EBAC685D2D70BC56CDF80C91255'

}

# res = RunMain(url,'GET')

#实例化RunMain

res = RunMain(url2,'POST',data,cookies)

print(res.res)

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180710G1WX8U00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券