| 12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- class AkshareConfig:
- _instance = None
- def __new__(cls):
- if cls._instance is None:
- cls._instance = super().__new__(cls)
- cls._instance.proxies = None
- return cls._instance
- @classmethod
- def set_proxies(cls, proxies):
- cls().proxies = proxies
- @classmethod
- def get_proxies(cls):
- return cls().proxies
- config = AkshareConfig()
- # 导出 set_proxies 函数
- def set_proxies(proxies):
- config.set_proxies(proxies)
- def get_proxies():
- return config.get_proxies()
- class ProxyContext:
- def __init__(self, proxies):
- self.proxies = proxies
- self.old_proxies = None
- def __enter__(self):
- self.old_proxies = config.get_proxies()
- config.set_proxies(self.proxies)
- return self
- def __exit__(self, exc_type, exc_val, exc_tb):
- config.set_proxies(self.old_proxies)
- return False # 不处理异常
|