mirror of
https://github.com/rembo10/headphones.git
synced 2026-07-20 16:03:59 +01:00
Better fix for non-unicode artist names being passed into artistlist_to_mbids
This commit is contained in:
@@ -49,6 +49,16 @@ def artistlist_to_mbids(artistlist, forced=False):
|
|||||||
if not artist and not (artist == ' '):
|
if not artist and not (artist == ' '):
|
||||||
continue
|
continue
|
||||||
|
|
||||||
|
|
||||||
|
# If adding artists through Manage New Artists, there coming through as non-unicode (utf-8?)
|
||||||
|
# and screwing everything up
|
||||||
|
if not isinstance(artist, unicode):
|
||||||
|
try:
|
||||||
|
artist = artist.decode('utf-8', 'replace')
|
||||||
|
except:
|
||||||
|
logger.warn("Unable to convert artist to unicode so cannot do a database lookup")
|
||||||
|
continue
|
||||||
|
|
||||||
results = mb.findArtist(artist, limit=1)
|
results = mb.findArtist(artist, limit=1)
|
||||||
|
|
||||||
if not results:
|
if not results:
|
||||||
|
|||||||
@@ -407,17 +407,6 @@ def getTracksFromRelease(release):
|
|||||||
# Used when there is a disambiguation
|
# Used when there is a disambiguation
|
||||||
def findArtistbyAlbum(name):
|
def findArtistbyAlbum(name):
|
||||||
|
|
||||||
# Somehow non unicode is getting passed into this function?
|
|
||||||
if not isinstance(name, unicode):
|
|
||||||
try:
|
|
||||||
name = name.decode('latin-1', 'replace')
|
|
||||||
except:
|
|
||||||
try:
|
|
||||||
name = name.decode(headphones.SYS_ENCODING, 'replace')
|
|
||||||
except:
|
|
||||||
logger.warn("Unable to convert artist to unicode so cannot do a database lookup")
|
|
||||||
return False
|
|
||||||
|
|
||||||
myDB = db.DBConnection()
|
myDB = db.DBConnection()
|
||||||
|
|
||||||
artist = myDB.action('SELECT AlbumTitle from have WHERE ArtistName=? AND AlbumTitle IS NOT NULL ORDER BY RANDOM()', [name]).fetchone()
|
artist = myDB.action('SELECT AlbumTitle from have WHERE ArtistName=? AND AlbumTitle IS NOT NULL ORDER BY RANDOM()', [name]).fetchone()
|
||||||
|
|||||||
Reference in New Issue
Block a user