1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
import requests
import json
class Api():
def __init__(self, config, verify=True):
self.config = config.api
self.session = requests.session()
self.verify = verify
def api_url(self, path):
return self.api_root() + path
def api_root(self):
return "https://{domain}:{port}/{version}/".format(**self.config)
def get(self, path, **args):
response = self.session.get(self.api_url(path),
verify=self.verify,
**args)
return self.parse_json(response)
def post(self, path, **args):
response = self.session.post(self.api_url(path),
verify=self.verify,
**args)
return self.parse_json(response)
def put(self, path, **args):
response = self.session.put(self.api_url(path),
verify=self.verify,
**args)
return self.parse_json(response)
def parse_json(self, response):
try:
return response.json()
except TypeError:
return response.json # older versions of requests
|