コード例 #1
0
 def lazy_user_ratings_lookup(self, config, style, entry):
     """Does the ratings lookup for this entry and populates the entry fields."""
     if style in ['show', 'episode', 'season']:
         lookup = lookup_series
         trakt_id = entry.get('trakt_show_id', eval_lazy=True)
     else:
         lookup = lookup_movie
         trakt_id = entry.get('trakt_movie_id', eval_lazy=True)
     with Session() as session:
         lookupargs = {'trakt_id': trakt_id,
                       'session': session}
         try:
             item = lookup(**lookupargs)
             if style in ['show', 'episode', 'season']:
                 rating_style = style
                 if style == 'show':
                     rating_style = 'series'
                 elif style == 'episode':
                     rating_style = 'ep'
                 # fetch episode data if style is not series
                 if style in ['episode', 'season']:
                     item = item.get_episode(entry['series_season'], entry['series_episode'], session)
                 rating = ApiTrakt.user_ratings(style, item, entry.get('title'),
                                                username=config.get('username'),
                                                account=config.get('account'))
                 entry['trakt_{}_user_rating'.format(rating_style)] = rating
             else:
                 movie_rating = ApiTrakt.user_ratings(style, item, entry.get('title'),
                                                      username=config.get('username'),
                                                      account=config.get('account'))
                 entry['trakt_movie_user_rating'] = movie_rating
         except LookupError as e:
             log.debug(e.args[0])
     return entry