""" 写mp3文件的一个程序,本程序于2015年5月编写,现在发到博客以肆读者。 """ __author__ = '李兴球' __date__ = '2015年5月' import os def setMp3Header(mp3file): mp3Id3V1 = { "SongName":125, "SongPeople":95, "ZhuanJi":65, "Year":35, "Bak":31 } tags = ['SongName','SongPeople','ZhuanJi','Bak'] f = open(mp3file,'r+') filesize=os.path.getsize(mp3file) try: f.seek(filesize-128) try: tempstr = f.read(3) print(tempstr) if tempstr == 'TAG': #在MP3文件的倒数每128个字节是TAG标签,否则认为不是MP3 for tag,startPos in mp3Id3V1.items(): print("writeMp3Header['%s']=%s" % (tag,writeMp3Header[tag])) if writeMp3Header[tag] != '': f.seek(filesize-startPos) if tag in tags: if len(writeMp3Header[tag]) > 30: f.write(writeMp3Header[tag][:30]) else: f.write(writeMp3Header[tag]) print(startPos,tag,writeMp3Header[tag]) else: print('is not a mp3file') except IOError: print('read error') finally: f.close() #定义字典 writeMp3Header = { "SongName":"", "SongPeople":"", "ZhuanJi":"", "Year":"", "Bak":"" } writeMp3Header['SongName'] = 'testsongname' writeMp3Header['SongPeople'] = 'lixingqiu' writeMp3Header['ZhuanJi'] = 'zhuangji' writeMp3Header['Year'] = '2015' writeMp3Header['Bak'] = 'www.scratch8.net' setMp3Header(r'D:\CrazyFrogPlayTheGame.mp3')