diff --git a/README.rst b/README.rst index ac514bc..1bd1ef2 100644 --- a/README.rst +++ b/README.rst @@ -16,7 +16,7 @@ Example usage: :: >>> import whatapi - >>> apihandle = whatapi.WhatAPI(username='me', password='secret') + >>> apihandle = whatapi.WhatAPI(username='me', password='secret', update_payload={'qr_confirm': 'code'}) >>> apihandle.request("browse", searchstr="Talulah Gosh") ... >>> apihandle.get_torrent(1234567) diff --git a/whatapi/whatapi.py b/whatapi/whatapi.py index 22d5dcd..60211ca 100644 --- a/whatapi/whatapi.py +++ b/whatapi/whatapi.py @@ -21,13 +21,14 @@ class RequestException(Exception): class WhatAPI: def __init__(self, config_file=None, username=None, password=None, cookies=None, - server="https://ssl.what.cd", throttler=None): + server="https://ssl.what.cd", throttler=None, update_payload={}): self.session = requests.Session() self.session.headers = headers self.authkey = None self.passkey = None self.server = server self.throttler = Throttler(5, 10) if throttler is None else throttler + self.update_payload = update_payload if config_file: config = ConfigParser() config.read(config_file) @@ -59,6 +60,8 @@ def _login(self): 'keeplogged': 1, 'login': 'Login' } + data.update(self.update_payload) + r = self.session.post(loginpage, data=data, allow_redirects=False) if r.status_code != 302: raise LoginException @@ -120,4 +123,4 @@ def throttle_request(self): if sleep_time > 0: time.sleep(sleep_time) self.request_times = self.request_times[1:] - self.request_times.append(request_time) \ No newline at end of file + self.request_times.append(request_time)