Speed up userscript info getter by removing actor info
This commit is contained in:
@@ -74,7 +74,7 @@ class CouchPotatoApi(MovieProvider):
|
||||
|
||||
return True
|
||||
|
||||
def getInfo(self, identifier = None):
|
||||
def getInfo(self, identifier = None, **kwargs):
|
||||
|
||||
if not identifier:
|
||||
return
|
||||
|
||||
@@ -46,7 +46,7 @@ class OMDBAPI(MovieProvider):
|
||||
|
||||
return []
|
||||
|
||||
def getInfo(self, identifier = None):
|
||||
def getInfo(self, identifier = None, **kwargs):
|
||||
|
||||
if not identifier:
|
||||
return {}
|
||||
|
||||
@@ -61,7 +61,7 @@ class TheMovieDb(MovieProvider):
|
||||
|
||||
return results
|
||||
|
||||
def getInfo(self, identifier = None):
|
||||
def getInfo(self, identifier = None, extended = True):
|
||||
|
||||
if not identifier:
|
||||
return {}
|
||||
@@ -73,14 +73,14 @@ class TheMovieDb(MovieProvider):
|
||||
try:
|
||||
log.debug('Getting info: %s', cache_key)
|
||||
movie = tmdb3.Movie(identifier)
|
||||
result = self.parseMovie(movie)
|
||||
result = self.parseMovie(movie, with_actors = extended)
|
||||
self.setCache(cache_key, result)
|
||||
except:
|
||||
pass
|
||||
|
||||
return result
|
||||
|
||||
def parseMovie(self, movie, with_titles = True):
|
||||
def parseMovie(self, movie, with_titles = True, with_actors = True):
|
||||
|
||||
cache_key = 'tmdb.cache.%s' % movie.id
|
||||
movie_data = self.getCache(cache_key)
|
||||
@@ -112,12 +112,13 @@ class TheMovieDb(MovieProvider):
|
||||
|
||||
# Gather actors data
|
||||
actors = {}
|
||||
for cast_item in movie.cast:
|
||||
try:
|
||||
actors[toUnicode(cast_item.name)] = toUnicode(cast_item.character)
|
||||
images['actor %s' % toUnicode(cast_item.name)] = self.getImage(cast_item, type = 'profile', size = 'original')
|
||||
except:
|
||||
log.debug('Error getting cast info for %s: %s', (cast_item, traceback.format_exc()))
|
||||
if with_actors:
|
||||
for cast_item in movie.cast:
|
||||
try:
|
||||
actors[toUnicode(cast_item.name)] = toUnicode(cast_item.character)
|
||||
images['actor %s' % toUnicode(cast_item.name)] = self.getImage(cast_item, type = 'profile', size = 'original')
|
||||
except:
|
||||
log.debug('Error getting cast info for %s: %s', (cast_item, traceback.format_exc()))
|
||||
|
||||
movie_data = {
|
||||
'type': 'movie',
|
||||
|
||||
@@ -25,7 +25,7 @@ class UserscriptBase(Plugin):
|
||||
result = fireEvent('movie.search', q = '%s %s' % (name, year), limit = 1, merge = True)
|
||||
|
||||
if len(result) > 0:
|
||||
movie = fireEvent('movie.info', identifier = result[0].get('imdb'), merge = True)
|
||||
movie = fireEvent('movie.info', identifier = result[0].get('imdb'), extended = False, merge = True)
|
||||
return movie
|
||||
else:
|
||||
return None
|
||||
@@ -54,7 +54,7 @@ class UserscriptBase(Plugin):
|
||||
return self.getInfo(getImdb(data))
|
||||
|
||||
def getInfo(self, identifier):
|
||||
return fireEvent('movie.info', identifier = identifier, merge = True)
|
||||
return fireEvent('movie.info', identifier = identifier, extended = False, merge = True)
|
||||
|
||||
def getInclude(self):
|
||||
return self.includes
|
||||
|
||||
@@ -8,4 +8,4 @@ class IMDB(UserscriptBase):
|
||||
includes = ['*://*.imdb.com/title/tt*', '*://imdb.com/title/tt*']
|
||||
|
||||
def getMovie(self, url):
|
||||
return fireEvent('movie.info', identifier = getImdb(url), merge = True)
|
||||
return self.getInfo(getImdb(url))
|
||||
|
||||
@@ -9,7 +9,7 @@ class TMDB(UserscriptBase):
|
||||
|
||||
def getMovie(self, url):
|
||||
match = re.search('(?P<id>\d+)', url)
|
||||
movie = fireEvent('movie.info_by_tmdb', identifier = match.group('id'), merge = True)
|
||||
movie = fireEvent('movie.info_by_tmdb', identifier = match.group('id'), extended = False, merge = True)
|
||||
|
||||
if movie['imdb']:
|
||||
return self.getInfo(movie['imdb'])
|
||||
|
||||
Reference in New Issue
Block a user