X-Git-Url: https://git.kaliko.me/?a=blobdiff_plain;f=sima%2Flib%2Fsimaecho.py;h=14623031df6ab1f46d0d991572975171f0908812;hb=e8b115becc6a6c5bb66810eb25fff8bebc80b000;hp=3e6f28147d29d6669b3178929d9ff6b65411b627;hpb=00f3a52f35f709dd4c471cb6ad87dbd09cfd4aaf;p=mpd-sima.git diff --git a/sima/lib/simaecho.py b/sima/lib/simaecho.py index 3e6f281..1462303 100644 --- a/sima/lib/simaecho.py +++ b/sima/lib/simaecho.py @@ -25,10 +25,7 @@ __version__ = '0.0.1' __author__ = 'Jack Kaliko' -import logging - from datetime import datetime, timedelta -from time import sleep from requests import get, Request, Timeout, ConnectionError @@ -44,8 +41,8 @@ WAIT_BETWEEN_REQUESTS = timedelta(0, 1) SOCKET_TIMEOUT = 4 -class SimaEch(): - """ +class SimaEch: + """EchoNest http client """ root_url = 'http://{host}/api/{version}'.format(**ECH) cache = {} @@ -67,7 +64,7 @@ class SimaEch(): self.current_element = SimaEch.cache.get(url).elem return try: - self._fetch_ech(payload) + self._fetch_ws(payload) except Timeout: raise WSTimeout('Failed to reach server within {0}s'.format( SOCKET_TIMEOUT)) @@ -75,7 +72,7 @@ class SimaEch(): raise WSError(err) @Throttle(WAIT_BETWEEN_REQUESTS) - def _fetch_ech(self, payload): + def _fetch_ws(self, payload): """fetch from web service""" req = get(self._ressource, params=payload, timeout=SOCKET_TIMEOUT) @@ -100,7 +97,7 @@ class SimaEch(): raise WSError(status.get('message')) def _forge_payload(self, artist): - """ + """Build payload """ payload = {'api_key': ECH.get('apikey')} if not isinstance(artist, Artist): @@ -110,13 +107,13 @@ class SimaEch(): payload.update( id='musicbrainz:artist:{0}'.format(artist.mbid)) else: - payload.update(name=artist.name) + payload.update(name=artist.name) payload.update(bucket='id:musicbrainz') payload.update(results=100) return payload def get_similar(self, artist=None): - """ + """Fetch similar artists """ payload = self._forge_payload(artist) # Construct URL