Fixed unicode error when no track metadata available - also fixed track renaming if no metadata available

This commit is contained in:
Remy
2011-08-21 14:46:03 -07:00
parent 98d154eb22
commit 2783c6be26
2 changed files with 28 additions and 13 deletions

View File

@@ -121,6 +121,17 @@ def cleanName(string):
return out_string
def cleanTitle(title):
title = re.sub('[\.\-\/\_]', ' ', title).lower()
# Strip out extra whitespace
title = ' '.join(title.split())
title = title.title()
return title
def extract_data(s):
from headphones import logger

View File

@@ -432,21 +432,27 @@ def renameFiles(albumpath, downloaded_track_list, release):
tracknumber = '%02d' % f.track
if not f.title:
basename = os.path.basename(downloaded_track)
basename = unicode(os.path.basename(downloaded_track), headphones.SYS_ENCODING, errors='replace')
title = os.path.splitext(basename)[0]
ext = os.path.splitext(basename)[1]
new_file_name = helpers.cleanTitle(title) + ext
else:
title = f.title
values = { 'tracknumber': tracknumber,
'title': title,
'artist': release['ArtistName'],
'album': release['AlbumTitle'],
'year': year
}
ext = os.path.splitext(downloaded_track)[1]
values = { 'tracknumber': tracknumber,
'title': title,
'artist': release['ArtistName'],
'album': release['AlbumTitle'],
'year': year
}
ext = os.path.splitext(downloaded_track)[1]
new_file_name = helpers.replace_all(headphones.FILE_FORMAT, values).replace('/','_') + ext
new_file_name = helpers.replace_all(headphones.FILE_FORMAT, values).replace('/','_') + ext
new_file_name = new_file_name.replace('?','_').replace(':', '_').encode(headphones.SYS_ENCODING)
@@ -550,6 +556,4 @@ def forcePostProcess():
logger.error('Can not get release information for this album')
continue
if rgid:
verify(rgid, albumpath)
verify(rgid, albumpath)