我想为所有请求设置请求默认配置,所以不要这样做:
requests.get(url, headers={...}, timeout=..., proxies=...)
我只是做
requests.get(url)
我确实进行了搜索,但是没有找到解决方案,我可以想到将请求扩展到这样的类:
import requests
class CustomRequests:
def __init__(self, **kwargs):
for k, v in kwargs.items():
setattr(self, k, v)
def __call__(self, requests_object, *args, **kwargs):
return requests_object(*args, **kwargs, **self.__dict__)
并且可以这样使用:
Req = CustomRequests(headers={'foo': 'bar'}, proxies={'http': 'baz'}, timeout=15)
print(Req(requests.get, 'https://github.com').status_code)
200
对我来说,这听起来像是种肮脏的破解方式,不是吗?有更好的解决方案吗?
谢谢。
答案 0 :(得分:0)
如果你不需要使用sessions,比如你只发出一个请求,你可以使用partials
"android-key"