每个请求做异常捕抓,日志记录,协议转换,封装工具方便进行统一维护
新建项目util,main,config包和requirement.txt
RequestUtil.py
import requests
class RequestUtil:
def __int__(self):
pass
def request(self, url, method, headers=None, param=None, content_type=None):
"""
请求工具类传递的参数
:param url:
:param method:
:param headers:
:param param:
:param content_type:
:return:
"""
try:
if method == 'get':
# .json() 返回的是json的数据
res = requests.get(url=url, params=param, headers=headers).json()
return res
elif method == 'post':
# 判断content_type,是表单还是json的请求
if content_type == 'application/json':
res = requests.post(url=url, json=param, headers=headers).json()
return res
elif content_type == 'application/x-www-form-urlencoded':
res = requests.post(url=url, json=param, headers=headers).json()
return res
else:
print("请输入正确的content_type")
else:
print("目前只支持get/post")
except Exception as e:
print("http请求报错:{0}".format(e))
if __name__ == '__main__':
url = "https://pagead2.googlesyndication.com/getconfig/sodar?sv=200&tid=gda&tv=r20220607&st=env"
r = RequestUtil()
re = r.request(url=url, method='get')
print(re)