From 7d42703d8e1698e7a84fdd642765275fc800c9e4 Mon Sep 17 00:00:00 2001 From: Augustin Bouverot Date: Mon, 29 Jun 2020 16:23:38 +0200 Subject: [PATCH] [n26] Handle 405 errors We can randomly get a 405 error back from our first request in the do_login(), causing a crash while trying to parse the empty response body as json. --- modules/n26/browser.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/modules/n26/browser.py b/modules/n26/browser.py index d89dd7515a..ed6aabca87 100644 --- a/modules/n26/browser.py +++ b/modules/n26/browser.py @@ -140,6 +140,9 @@ def do_login(self): try: result = self.request('/oauth2/token', data=data) except ClientError as ex: + # sometime we get a random 405 back from our first request, there is no response body. + if ex.response.status_code == 405: + raise BrowserUnavailable() json_response = ex.response.json() if json_response.get('title') == 'A second authentication factor is required.': self.mfaToken = json_response.get('mfaToken') -- GitLab