From 358181f355c255ba1e4417cc611160b734543bdf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dan=20Michael=20O=2E=20Hegg=C3=B8?= <danmichaelo@gmail.com> Date: Fri, 9 Nov 2018 20:50:10 +0100 Subject: [PATCH] Refactor: Always call requests.request --- mwclient/client.py | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/mwclient/client.py b/mwclient/client.py index 4db1288..617af89 100644 --- a/mwclient/client.py +++ b/mwclient/client.py @@ -352,6 +352,7 @@ class Site(object): data (dict): Post data files (dict): Files to upload retry_on_error (bool): Retry on connection error + http_method (str): The HTTP method, defaults to 'POST' Returns: The raw text response. @@ -372,12 +373,16 @@ class Site(object): while True: try: + args = {'files': files, 'headers': headers} + for k, v in self.requests.items(): + args[k] = v if http_method == 'GET': - stream = self.connection.get(url, params=data, files=files, - headers=headers, **self.requests) + args['params'] = data else: - stream = self.connection.post(url, data=data, files=files, - headers=headers, **self.requests) + args['data'] = data + + stream = self.connection.request(http_method, url, **args) + if stream.headers.get('x-database-lag'): wait_time = int(stream.headers.get('retry-after')) log.warning('Database lag exceeds max lag. ' -- GitLab