X-Git-Url: https://git.kaliko.me/?a=blobdiff_plain;f=sima%2Fplugins%2Finternal%2Flastfm.py;h=03cea6cd4284247ac2180b9f831a56dea5022ca6;hb=50a7a9b43940155f8b0a3b81bb91a79585104eb9;hp=c5a772f5b763552961854bda1787a90a9aad0867;hpb=2d4111ef3e3eb3811df95b139aac66b61c3ad5bf;p=mpd-sima.git diff --git a/sima/plugins/internal/lastfm.py b/sima/plugins/internal/lastfm.py index c5a772f..03cea6c 100644 --- a/sima/plugins/internal/lastfm.py +++ b/sima/plugins/internal/lastfm.py @@ -30,6 +30,7 @@ def cache(func): results = cls._cache.get('asearch').get(hashedlst) else: results = func(*args, **kwargs) + cls.log.debug('caching request') cls._cache.get('asearch').update({hashedlst:list(results)}) random.shuffle(results) return results @@ -145,7 +146,7 @@ class Lastfm(Plugin): # Should use albumartist heuristic as well if self.plugin_conf.getboolean('single_album'): if (trk.album == self.player.current.album or - trk.album in [trk.alb for trk in self.to_add]): + trk.album in [tr.album for tr in self.to_add]): self.log.debug('Found unplayed track ' + 'but from an album already queued: %s' % (trk)) continue @@ -244,6 +245,8 @@ class Lastfm(Plugin): for artist in extra_arts: self.log.debug('Looking for artist similar to "{0.artist}" as well'.format(artist)) similar = self.lfm_similar_artists(artist=artist) + if not similar: + return ret_extra similar = sorted(similar, key=lambda sim: sim[1], reverse=True) ret_extra.extend(self.get_artists_from_player(similar)) if current.artist in ret_extra: