def __cache_artists_info(self): """ Cache info for all artists """ # We create cache if needed InfoCache.init() # Then cache for lastfm/wikipedia/spotify/deezer/... for (artist_id, artist) in Lp().artists.get([]): if not get_network_available() or\ InfoCache.exists(artist): continue artwork_set = False for (api, helper, unused) in InfoCache.WEBSERVICES: debug("Downloader::__cache_artists_info(): %s@%s" % (artist, api)) if helper is None: continue try: method = getattr(self, helper) (url, content) = method(artist) if url is not None: s = Lio.File.new_for_uri(url) (status, data, tag) = s.load_contents() if status: artwork_set = True InfoCache.add(artist, content, data, api) debug("Downloader::__cache_artists_info(): %s" % url) else: InfoCache.add(artist, None, None, api) except Exception as e: print("Downloader::__cache_artists_info():", e, artist) InfoCache.add(artist, None, None, api) if artwork_set: GLib.idle_add(Lp().art.emit, 'artist-artwork-changed', artist) self.__cache_artists_running = False
def __cache_artists_info(self): """ Cache info for all artists """ # We create cache if needed InfoCache.init() # Then cache for lastfm/wikipedia/spotify/deezer/... for (artist_id, artist, sort) in Lp().artists.get([]): if not get_network_available() or\ InfoCache.exists(artist): continue artwork_set = False for (api, helper, unused) in InfoCache.WEBSERVICES: debug("Downloader::__cache_artists_info(): %s@%s" % (artist, api)) if helper is None: continue try: method = getattr(self, helper) (url, content) = method(artist) if url is not None: s = Lio.File.new_for_uri(url) (status, data, tag) = s.load_contents() if status: artwork_set = True InfoCache.add(artist, content, data, api) debug("Downloader::__cache_artists_info(): %s" % url) else: InfoCache.add(artist, None, None, api) except Exception as e: print("Downloader::__cache_artists_info():", e, artist) InfoCache.add(artist, None, None, api) if artwork_set: GLib.idle_add(Lp().art.emit, 'artist-artwork-changed', artist) self.__cache_artists_running = False