"""
封装了requests库
"""
import requests
from public.public_log import get_logger
logger = get_logger(__name__)
# 封装request库
class RequestsObject:
def __init__(self):
"""session管理器"""
requests.adapters.DEFAULT_RETRIES = 3
self.session = requests.session()
self.session.keep_alive = False
# 发送请求
def go_request(self, method, url, params=None, data=None, json=None, headers=None, files=None, **kwargs):
logger.info('请求的URL:%s' % url)
logger.info('请求方法:%s' % method)
if headers:
logger.info('请求头:')
logger.info(headers)
if method == 'post':
if json:
logger.info('请求的json:')
logger.info(json)
if files:
logger.info('发送的文件:')
logger.info(files)
if method == 'get':
if params:
logger.info('请求的params:')
logger.info(params)
res = self.session.request(method, url, params=params, data=data, json=json, headers=headers, files=files,
verify=False, **kwargs)
logger.info('请求结果:%s ' % res.text)
return res
def close_session(self):
"""关闭session"""
self.session.close()