MyRequest.py
3.46 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
#!/usr/bin/python
# -*- coding: UTF-8 -*-
import requests
import json
from commons import common as com
from commons.Logging import Logger
# from requests.adapters import HTTPAdapter HTTPAdapter(max_retries=3)
import urllib3
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
log=Logger()
class myrequest(object):
def __init__(self):
self.timeout = 60
self.max_retries = 3
self.keep_alive = False
self.ssl_verify=False
self.proxies=None
self.allow_redirects=False
def getSession(self,proxies=None):
if proxies:
self.proxies={'http': 'http://localhost:8888', 'https': 'http://localhost:8888'}
se=requests.session()
url=com.get_api_config('login', 'login01', 'url')
header=json.loads(com.get_api_config('login', 'login01', 'header'))
body=com.get_api_config('login', 'login01', 'body')
r=se.post(url,data=body,headers=header,allow_redirects=False,proxies=self.proxies)
# assert r.status_code==200,"请检查登录信息"
print(r.status_code)
self.se=se
return self.se
def get(self,url,**kwargs):
log.info('{0:=^80}'.format('进行GET请求'))
log.info('请求地址为{};\n'.format(url))
res = self.se.get(url, proxies=self.proxies,**kwargs)
log.info('响应body为{};'.format(res.json()))
return res
def post(self,url, data=None, json=None, **kwargs):
log.info('{0:=^80}'.format('进行POST请求'))
log.info('请求地址为{};\n 请求body为{};\n'.format(url,data))
res = self.se.post(url, data=data, json=json,proxies=self.proxies,**kwargs)
log.info('响应body为{};'.format(res.json()))
return res
def put(self,url, data=None, **kwargs):
res = self.se.put(url, data=data, **kwargs)
return res
def delete(self,url, **kwargs):
res = self.se.delete(url, **kwargs)
return res
def patch(self,url, data=None, **kwargs):
res = self.se.patch(url,data=data, **kwargs)
return res
def head(self, url, **kwargs):
res = self.se.patch(url,data=None, **kwargs)
return res
def close_session(self):
self.se.close()
# def to_request(self,method,url,data=None,is_json=False,**kwargs): #最后加入**kwargs使可以传headers
# method = method.upper()
# if isinstance(data,str):
# try:
# data = json.load(data) #'{"mobilephone": "18911114444", "pwd": "123456", "regname": "youxiu"}'
# except Exception as e:
# # print("异常为{}".format(e))
# Logger.error("异常为{}".format(e))
# data = eval(data) #'{"mobilephone": '18911114444',1:"4545"}' 非json的字符串
# if method == 'GET':
# res = self.one_session.request(method,url,params=data,**kwargs)
# elif method == 'POST':
# if is_json:
# res = self.one_session.request(method, url, json=data,**kwargs)
# else:
# res = self.one_session.request(method, url, data=data,**kwargs)
# else:
# res = None
# # print("405 METHOD NOT ALLOWED")
# Logger.error("METHOD NOT ALLOWED".format(method))
# return res
# test=myrequest()
# re=test.getSession(True)
# print(re.headers)