On 2016-07-29, TUA <[email protected]> wrote:
> Rather than do this:
>
> if test['method'] == 'GET':
> res = requests.get(test['endpoint'], auth=test['auth'],
> verify=False)
> elif test['method'] == 'POST':
> res = requests.post(test['endpoint'], auth=test['auth'],
> verify=False, json=test['body'])
> elif test['method'] == 'PUT':
> res = requests.put(test['endpoint'], auth=test['auth'],
> verify=False, json=test['body'])
> elif test['method'] == 'DELETE':
> res = requests.delete(test['endpoint'], auth=test['auth'],
> verify=False)
> elif test['method'] == 'HEAD':
> res = requests.head(test['endpoint'], auth=test['auth'],
> verify=False)
>
> I would like to call the requests method that corresponds to
> test['method'] by finding that function by name - how can I achieve
> that?
if test['method'] not in ('GET', 'POST', 'PUT', 'DELETE', 'HEAD'):
raise ValueError('Unknown method %r' % (test['method'],))
res = getattr(requests, test['method'].lower())(
test['endpoint'], auth=test['auth'], verify=False)
although in the specific case of using requests you could just do:
res = requests.request(test['method'], test['endpoint'],
auth=test['auth'], verify=False)
--
https://mail.python.org/mailman/listinfo/python-list