mirror of https://github.com/morpheus65535/bazarr
Improved error handling for betaseries provider.
This commit is contained in:
parent
9379d1b7f8
commit
cb71b11fd2
|
@ -1,20 +1,16 @@
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
from __future__ import absolute_import
|
from __future__ import absolute_import
|
||||||
import json
|
|
||||||
import logging
|
import logging
|
||||||
import os
|
import os
|
||||||
import re
|
|
||||||
import io
|
import io
|
||||||
import rarfile
|
import rarfile
|
||||||
import zipfile
|
import zipfile
|
||||||
|
|
||||||
from babelfish import language_converters
|
|
||||||
from guessit import guessit
|
from guessit import guessit
|
||||||
from requests import Session
|
from requests import Session
|
||||||
from subzero.language import Language
|
|
||||||
|
|
||||||
from subliminal import Movie, Episode, ProviderError, __short_version__
|
from subliminal import Episode
|
||||||
from subliminal.exceptions import AuthenticationError, ConfigurationError, DownloadLimitExceeded, ProviderError
|
from subliminal.exceptions import AuthenticationError, ConfigurationError
|
||||||
from subliminal_patch.subtitle import Subtitle, guess_matches
|
from subliminal_patch.subtitle import Subtitle, guess_matches
|
||||||
from subliminal.subtitle import fix_line_ending, SUBTITLE_EXTENSIONS
|
from subliminal.subtitle import fix_line_ending, SUBTITLE_EXTENSIONS
|
||||||
from subliminal_patch.providers import Provider
|
from subliminal_patch.providers import Provider
|
||||||
|
@ -77,7 +73,6 @@ class BetaSeriesProvider(Provider):
|
||||||
|
|
||||||
def query(self, languages, video):
|
def query(self, languages, video):
|
||||||
# query the server
|
# query the server
|
||||||
result = None
|
|
||||||
self.video = video
|
self.video = video
|
||||||
matches = set()
|
matches = set()
|
||||||
if video.tvdb_id:
|
if video.tvdb_id:
|
||||||
|
@ -101,6 +96,8 @@ class BetaSeriesProvider(Provider):
|
||||||
logger.debug('Searching subtitles %r', params)
|
logger.debug('Searching subtitles %r', params)
|
||||||
res = self.session.get(
|
res = self.session.get(
|
||||||
server_url + 'shows/episodes', params=params, timeout=10)
|
server_url + 'shows/episodes', params=params, timeout=10)
|
||||||
|
if res.status_code == 400:
|
||||||
|
raise AuthenticationError("Invalid token provided")
|
||||||
res.raise_for_status()
|
res.raise_for_status()
|
||||||
result = res.json()
|
result = res.json()
|
||||||
matches.add('series_tvdb_id')
|
matches.add('series_tvdb_id')
|
||||||
|
@ -115,9 +112,9 @@ class BetaSeriesProvider(Provider):
|
||||||
|
|
||||||
# parse the subtitles
|
# parse the subtitles
|
||||||
subtitles = []
|
subtitles = []
|
||||||
if 'episode' in result:
|
if 'episode' in result and 'subtitles' in result['episode']:
|
||||||
subs = result['episode']['subtitles']
|
subs = result['episode']['subtitles']
|
||||||
elif 'episodes' in result:
|
elif 'episodes' in result and len(result['episodes'] and 'subtitles' in result['episodes'][0]):
|
||||||
subs = result['episodes'][0]['subtitles']
|
subs = result['episodes'][0]['subtitles']
|
||||||
else:
|
else:
|
||||||
return []
|
return []
|
||||||
|
|
Loading…
Reference in New Issue