def find_artist_posters(posters, artist, lastfm_artist, fanart_artist): if artist == 'Various Artists': return if lastfm_artist: # Fanart.tv. if fanart_artist and 'artistthumb' in fanart_artist: posters.extend( [thumb['url'] for thumb in fanart_artist['artistthumb']]) # Last.fm. posters.extend([ image['#text'] for image in lastfm_artist['image'] if len(image['#text']) > 0 and image['size'] == 'mega' ]) posters.extend([ image['#text'] for image in lastfm_artist['image'] if len(image['#text']) > 0 and image['size'] == 'extralarge' ]) # Discogs cache. try: images = XML.ElementFromURL( 'http://meta.plex.tv/a/' + quote(normalize_artist_name(artist))).xpath('//image') posters.extend([ image.get('url') for image in images if image.get('primary') == '1' ]) posters.extend([ image.get('url') for image in images if image.get('primary') == '0' ]) except: Log('No artist result from Discogs cache')
def find_artist_posters(posters, artist, lastfm_artist, fanart_artist, htbackdrops_artist_images): if artist == 'Various Artists': return # Fanart.tv. if lastfm_artist: if fanart_artist and 'artistthumb' in fanart_artist: posters.extend( [thumb['url'] for thumb in fanart_artist['artistthumb']]) # HT Backdrops. if htbackdrops_artist_images is not None: htbackdrops_posters = [] htbackdrops_posters.extend([ image.find('id').text for image in htbackdrops_artist_images if image.find('aid').text == '5' ]) count = 0 for poster_id in htbackdrops_posters: posters.append(HTBACKDROPS_FULL_URL % poster_id) count += 1 if count >= 50: # max 50 posters break # Last.fm. if lastfm_artist: posters.extend([ image['#text'] for image in lastfm_artist['image'] if len(image['#text']) > 0 and image['size'] == 'mega' ]) posters.extend([ image['#text'] for image in lastfm_artist['image'] if len(image['#text']) > 0 and image['size'] == 'extralarge' ]) # Discogs cache. try: images = XML.ElementFromURL( 'https://meta.plex.tv/a/' + quote(normalize_artist_name(artist))).xpath('//image') posters.extend([ image.get('url') for image in images if image.get('primary') == '1' ]) posters.extend([ image.get('url') for image in images if image.get('primary') == '0' ]) except: Log('No artist result from Discogs cache')
def find_artist_posters(posters, artist, lastfm_artist, fanart_artist): if artist == 'Various Artists': return if lastfm_artist: # Fanart.tv. if fanart_artist and 'artistthumb' in fanart_artist: posters.extend([thumb['url'] for thumb in fanart_artist['artistthumb']]) # Last.fm. posters.extend([image['#text'] for image in lastfm_artist['image'] if len(image['#text']) > 0 and image['size'] == 'mega']) posters.extend([image['#text'] for image in lastfm_artist['image'] if len(image['#text']) > 0 and image['size'] == 'extralarge']) # Discogs cache. try: images = XML.ElementFromURL('http://meta.plex.tv/a/' + quote(normalize_artist_name(artist))).xpath('//image') posters.extend([image.get('url') for image in images if image.get('primary') == '1']) posters.extend([image.get('url') for image in images if image.get('primary') == '0']) except: Log('No artist result from Discogs cache')
def NormalizeArtist(artist): return normalize_artist_name(artist)