我需要在Python 3上使用Requests库处理大量请求。
我通过使用我自己的类来添加一个抽象级别,它将管理请求调用。
def requests(self, method, domain, url, parameters, token):
if method == 'GET':
r = Requests.get(domain + url, params=parameters, timeout=self.timeout)
if method == 'POST':
r = Requests.post(domain + url, params=parameters, timeout=self.timeout)
对于每种请求,我发现它非常冗长,知道如果有关于身份验证,特定标头等的话,我会添加其他请求。 (将其他args添加为auth=MyAuth(log, pwd)
,依此类推)
有没有办法动态调用函数?类似的东西:
d = dict()
d['parameters'] = parameters
d['token'] = token
r = Requests.(method)(d)
问候。
答案 0 :(得分:0)
正如@glibdud所说,你也可以在函数调用中使用**。
就我而言,使用getattr(Requests, method.lower())(domain + url, **args)
就可以了。以args = {'params'=parameters,'timeout':self.timeout}
为例。