diff options
-rw-r--r-- | libs/subliminal_patch/providers/opensubtitlescom.py | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/libs/subliminal_patch/providers/opensubtitlescom.py b/libs/subliminal_patch/providers/opensubtitlescom.py index ca8d90193..532998c0d 100644 --- a/libs/subliminal_patch/providers/opensubtitlescom.py +++ b/libs/subliminal_patch/providers/opensubtitlescom.py @@ -454,7 +454,17 @@ def checked(fn, raise_api_limit=False, validate_token=False, validate_json=False elif status_code == 403: raise ProviderError("Bazarr API key seems to be in problem") elif status_code == 406: - raise DownloadLimitExceeded("Daily download limit reached") + try: + json_response = response.json() + download_count = json_response['requests'] + remaining_download = json_response['remaining'] + quota_reset_time = json_response['reset_time'] + except JSONDecodeError: + raise ProviderError('Invalid JSON returned by provider') + else: + raise DownloadLimitExceeded(f"Daily download limit reached. {download_count} subtitles have been " + f"downloaded and {remaining_download} remaining subtitles can be " + f"downloaded. Quota will be reset in {quota_reset_time}.") elif status_code == 410: raise ProviderError("Download as expired") elif status_code == 429: |