# 导入requests库
import requests

# 自定义处理响应的函数
def custom_response_handler(response, *args, **kwargs):
    # 检查响应状态码
    if response.status_code != 200:
        print(response.request.url + " " + response.text)
        raise RuntimeError(response.text)
    
    # 解析JSON数据
    json_data = response.json()
    
    # 检查errcode是否为0
    if json_data.get('errcode') != 0:
        print("🚨🚨🚨  Error  🚨🚨🚨️")
        print(response.request.url + " " + json_data.get('errmsg'))
        raise RuntimeError(json_data.get('errmsg'))
    else:
        pass
    
    return response

# 自定义会话类,继承自requests.Session
class CustomSession(requests.Session):
    def __init__(self):
        super(CustomSession, self).__init__()

    # 重写request方法
    def request(self, method, url, **kwargs):
        # 在URL前添加固定部分
        url = 'https://www.xxx.com' + url
        
        # 设置默认超时时间为3秒
        kwargs.setdefault('timeout', 3)
        
        # 更新请求头部信息
        kwargs.setdefault('headers', {}).update(...)
        
        return super(CustomSession, self).request(method, url, **kwargs)

# 创建自定义会话对象
my_session = CustomSession()

# 禁用SSL验证
my_session.verify = False

# 添加响应处理钩子
my_session.hooks['response'].append(custom_response_handler)
本文使用MdSync工具发布!

代码人生笔记
1 声望0 粉丝