- Subject
- #python@freenode.net
- Author
- a.l.e
- Description
- No description given
- Posted on
- Sun, 24 Jan 2010 18:22:51 +0100
- Content
-
#!/usr/bin/python
import os
import sys
import getopt
from mutagen.easyid3 import ID3
from mutagen.oggvorbis import OggVorbis
optlist, args = getopt.getopt(sys.argv[1:], "", "misc")
#print optlist
misc = False
for o, a in optlist:
if o == "--misc":
misc = True
elif o in ("-h", "--help"):
usage()
sys.exit()
else:
assert False, "unhandled option"
path = os.getcwd()+'/'
# print path
song_list = []
for filename in args:
basename, extension = os.path.splitext(filename)
# print(filename)
# print(extension)
if extension == '.mp3' :
# print(filename)
track = {}
try :
track = ID3(path+filename)
except Exception :
print path+filename
print 'could not read ', filename
pass
if len(track) > 0 :
#print dir(track['TALB'].text)
#print dir(track)
#print track
song = {
'filename' : filename,
'extension' : extension,
'artist' : track['TPE1'].text[0],
'album' : track['TALB'].text[0],
'track' : track['TRCK'].text[0],
'title' : track['TIT2'].text[0],
}
#if not track.has_key('TSSE') :
#tagg[u"TSSE"] = ID3.TSSE()
#track['TSSE'].text = ['']
#print track
#track.save()
# print song
song_list.append(song)
elif extension == '.ogg' :
track = OggVorbis(path_file)
song = {
'filename' : filename,
'extension' : extension,
'artist' : track['artist'][0],
'album' : track['album'][0],
'track' : track['tracknumber'][0],
'title' : track['title'][0],
}
for song in song_list:
mystring = "%s %d\t%3.2f %-8s" % ("Values:",42,56.89732,"tot")
song['track'] = "%02d" % (int(song['track']))
if (misc) :
song['filename_new'] = (
(song['album']+'_-_'+str(song['track'])+'_-_'+song['artist']+'_-_'+song['title']).replace(' ','_').capit
alize()+song['extension']
).replace('/','_').lower()
else :
song['filename_new'] = (
(song['artist']+'_-_'+song['album']+'_-_'+song['track']+'_-_'+song['title']).replace(' ','_').capitalize
()+song['extension']
).replace('/','_').lower()
print song['filename_new']
y_n = raw_input('do you want to rename the files? (y/n)').lower().lstrip()
if y_n == 'y' :
for song in song_list:
print 'mv "'+song['filename']+'" "'+song['filename_new']+'"'
os.rename(song['filename'], song['filename_new'])