From 1e548be114b391f02e2d8436ae4d16f8e1da7c3a Mon Sep 17 00:00:00 2001 From: Daniel Cortes Date: Mon, 8 Jun 2020 22:39:01 -0400 Subject: [PATCH] Reintentar request si es que el servidor responde con 503 Resulta que musicbrainz puede responde con 503 a pesar de ser buena gente y mantener el ratelimit, esto puede ser por varias razones documentadas en https://musicbrainz.org/doc/XML_Web_Service/Rate_Limiting --- fetcher/musicbrainz.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/fetcher/musicbrainz.py b/fetcher/musicbrainz.py index 45a731c..38be20f 100644 --- a/fetcher/musicbrainz.py +++ b/fetcher/musicbrainz.py @@ -49,8 +49,11 @@ def _do_request_mb(url): :return: The dictionary with the response or the status and his an error message """ - ratelimit() - response = _do_request(url) + while True: + ratelimit() + response = _do_request(url) + if response.status_code != 503: + break if response.status_code == 200: response = response.json(object_hook=sanitize_keys)