X-Git-Url: https://git.kaliko.me/?a=blobdiff_plain;f=sima%2Flib%2Fsimaecho.py;h=cfae27c675530b086a322c61b08fe85cbae7b945;hb=75611a590e62f82a6f2651ac176ff619052eaa89;hp=1ee17fd6e2dbdd60decbf1c4a95c36dc8eaa952d;hpb=e9ed5c171c9251ef6ae7765b1406e2f5b2cb1c0d;p=mpd-sima.git diff --git a/sima/lib/simaecho.py b/sima/lib/simaecho.py index 1ee17fd..cfae27c 100644 --- a/sima/lib/simaecho.py +++ b/sima/lib/simaecho.py @@ -40,7 +40,7 @@ def get_mbid(obj, foreign='foreign_ids'): if foreign in obj: for frgnid in obj.get(foreign): if frgnid.get('catalog') == 'musicbrainz': - mbid = frgnid.get('foreign_id').split(':')[2] + return frgnid.get('foreign_id').split(':')[2] return None @@ -48,7 +48,6 @@ class SimaEch: """EchoNest http client """ root_url = 'http://{host}/api/{version}'.format(**ECH) - ratelimit = None name = 'EchoNest' cache = False stats = {'etag':0, @@ -77,8 +76,7 @@ class SimaEch: if not isinstance(artist, Artist): raise TypeError('"{0!r}" not an Artist object'.format(artist)) if artist.mbid: - payload.update( - id='musicbrainz:artist:{0}'.format(artist.mbid)) + payload.update(id='musicbrainz:artist:{0}'.format(artist.mbid)) else: payload.update(name=artist.name) payload.update(bucket='id:musicbrainz') @@ -103,8 +101,8 @@ class SimaEch: # Construct URL ressource = '{0}/artist/similar'.format(SimaEch.root_url) ans = self.http(ressource, payload) - self._controls_answer(ans.json()) - for art in ans.json().get('response').get('artists'): + self._controls_answer(ans.json()) # pylint: disable=no-member + for art in ans.json().get('response').get('artists'): # pylint: disable=no-member mbid = get_mbid(art) yield Artist(mbid=mbid, name=art.get('name')) @@ -115,13 +113,11 @@ class SimaEch: # Construct URL ressource = '{0}/song/search'.format(SimaEch.root_url) ans = self.http(ressource, payload) - self._controls_answer(ans.json()) + self._controls_answer(ans.json()) # pylint: disable=no-member titles = list() - art = { - 'artist': artist.name, - 'musicbrainz_artistid': artist.mbid, - } - for song in ans.json().get('response').get('songs'): + art = {'artist': artist.name, + 'musicbrainz_artistid': artist.mbid,} + for song in ans.json().get('response').get('songs'): # pylint: disable=no-member title = song.get('title') if not art.get('musicbrainz_artistid'): art['musicbrainz_artistid'] = get_mbid(song, 'artist_foreign_ids')