def _get_json(self, post_data): if post_data['op'] == 'login': data = {} else: data = {'sid': self.sid} data.update(post_data) r = self._session.post(self.url, data=json.dumps(data)) raise_on_error(r) return json.loads(r.text)
def _get_sid(self, url): res = requests.post(url, data=json.dumps({ 'op': 'login', 'user': self.user, 'password': self.password })) raise_on_error(res) j = json.loads(res.text) return j['content']['session_id']
def _get_json(self, post_data): if post_data['op'] == 'login': data = {} else: data = {'sid': self.sid} data.update(post_data) r = self._session.post(self.url, auth=self.http_auth, data=json.dumps(data)) raise_on_error(r) return json.loads(r.text)
def response_hook(self, r, **kwargs): j = json.loads(r.text) if int(j['status']) == 0: return r self.sid = self._get_sid(r.request.url) r.request.deregister_hook('response', self.response_hook) j = json.loads(r.request.body) j.update({'sid': self.sid}) req = requests.Request('POST', r.request.url) req.data = json.dumps(j) _r = requests.Session().send(req.prepare()) raise_on_error(_r) return _r