def get_top_albums(self): return PagedRequest( self.name, "user.gettopalbums", lambda r: r.get("topalbums", {}).get("album", []), PagedRequest.extract_album, lambda r: int(r["topalbums"]["@attr"]["total"]), lambda username, albums, period: data.save_user_top_albums( username, albums, period)).call()
def get_top_albums(self): return PagedRequest( self.name, "user.gettopalbums", lambda r: r.get("topalbums",{}).get("album",[]), PagedRequest.extract_album, lambda r: int(r["topalbums"]["@attr"]["total"]), lambda username, albums, period: data.save_user_top_albums(username, albums, period) ).call()
def _got_current_top_albums(self, albums): if not isinstance(albums, list): albums = [albums] data.save_user_top_albums(self.name,albums,"12month") self.recent_albums = albums
def _got_all_albums(self, albums): if not isinstance(albums, list): albums = [albums] data.save_user_top_albums(self.name,albums,"overall") for a in albums: self.all_albums.add((a["artist"],a["name"]))