Python写入数据到MP3文件中的方法
本文实例讲述了Python写入数据到MP3文件中的方法。分享给大家供大家参考。具体分析如下:
通过Mp3的Id3V1数据段的数据来修正Mp3文件的正确名字,但是,有时候这个数据断中的数据是空的,所以这里写一个修改Id3V1数据段的数据的函数,同样是练习。
使用方法:
writeMp3Header[SongName]='测试歌曲名称' writeMp3Header[SongPeople]='不得闲' writeMp3Header[ZhuanJi]='专辑' writeMp3Header[Year]='2009' writeMp3Header[Bak]='备注测试' setMp3Header(r'E:\test.mp3')
Python代码如下:
writeMp3Header={
"SongName":"",
"SongPeople":"",
"ZhuanJi":"",
"Year":"",
"Bak":""
}
defsetMp3Header(mp3file):
mp3Id3V1={
"SongName":-125,
"SongPeople":-95,
"ZhuanJi":-65,
"Year":-35,
"Bak":-31
}
tags=['SongName','SongPeople','ZhuanJi','Bak']
f=open(mp3file,'r+')
try:
f.seek(-128,2)
try:
tempstr=f.read(3)
iftempstr=='TAG':
fortag,startPosinmp3Id3V1.items():
ifwriteMp3Header[tag]!='':
f.seek(startPos,2)
iftagintags:
iflen(writeMp3Header[tag])>30:
f.write(writeMp3Header[tag][:30])
else:
f.write(writeMp3Header[tag])
printstartPos,tag,writeMp3Header[tag]
else:
print'isnotamp3file'
exceptIOError:
print'readerror'
finally:
f.close()
希望本文所述对大家的Python程序设计有所帮助。