Python写入数据到MP3文件中的方法


Posted in Python onJuly 10, 2015

本文实例讲述了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":""
   }
 def setMp3Header(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)
       if tempstr == 'TAG':
         for tag,startPos in mp3Id3V1.items():
           if writeMp3Header[tag] != '':
             f.seek(startPos,2)
             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()

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
python中as用法实例分析
Apr 30 Python
python实现的守护进程(Daemon)用法实例
Jun 02 Python
Python中的默认参数详解
Jun 24 Python
Python第三方库xlrd/xlwt的安装与读写Excel表格
Jan 21 Python
python装饰器实例大详解
Oct 25 Python
使用python实现链表操作
Jan 26 Python
pandas按若干个列的组合条件筛选数据的方法
Apr 11 Python
Python 读取图片文件为矩阵和保存矩阵为图片的方法
Apr 27 Python
PyQt5 窗口切换与自定义对话框的实例
Jun 20 Python
python Pandas如何对数据集随机抽样
Jul 29 Python
对Pytorch中nn.ModuleList 和 nn.Sequential详解
Aug 18 Python
FP-growth算法发现频繁项集——构建FP树
Jun 24 Python
Python将阿拉伯数字转换为罗马数字的方法
Jul 10 #Python
Python自动登录126邮箱的方法
Jul 10 #Python
Python获取邮件地址的方法
Jul 10 #Python
python实现中文分词FMM算法实例
Jul 10 #Python
Python实现的最近最少使用算法
Jul 10 #Python
Python导入oracle数据的方法
Jul 10 #Python
Python验证码识别的方法
Jul 10 #Python
You might like
php xml文件操作实现代码(二)
2009/03/20 PHP
PHP编程风格规范分享
2014/01/15 PHP
Laravel Intervention/image图片处理扩展包的安装、使用与可能遇到的坑详解
2017/11/14 PHP
javascript获取select的当前值示例代码(兼容IE/Firefox/Opera/Chrome)
2013/12/17 Javascript
js操作滚动条事件实例
2015/01/29 Javascript
JavaScript数组随机排列实现随机洗牌功能
2015/03/19 Javascript
jQuery获得包含margin的outerWidth和outerHeight的方法
2015/03/25 Javascript
JavaScript实现仿新浪微博大厅和腾讯微博首页滚动特效源码
2015/09/15 Javascript
使用jquery动态加载Js文件和Css文件
2015/10/24 Javascript
javascript如何实现暂停功能
2015/11/06 Javascript
使用getBoundingClientRect方法实现简洁的sticky组件的方法
2016/03/22 Javascript
如何实现json数据可视化详解
2016/11/24 Javascript
微信小程序 实战程序简易新闻的制作
2017/01/09 Javascript
Linux CentOS系统下安装node.js与express的方法
2017/04/01 Javascript
node.js中路由,中间件,ge请求和post请求的参数详解
2017/12/26 Javascript
微信小程序之 catalog 切换实现解析
2019/09/12 Javascript
JavaScript ECMA-262-3 深入解析(二):变量对象实例详解
2020/04/25 Javascript
微信小游戏中three.js离屏画布的示例代码
2020/10/12 Javascript
[02:44]2014DOTA2 国际邀请赛中国区预选赛 大神红毯秀
2014/05/25 DOTA
从零学python系列之浅谈pickle模块封装和拆封数据对象的方法
2014/05/23 Python
Python解释执行原理分析
2014/08/22 Python
python3 模拟登录v2ex实例讲解
2017/07/13 Python
基于循环神经网络(RNN)的古诗生成器
2018/03/26 Python
详解Python3 中hasattr()、getattr()、setattr()、delattr()函数及示例代码数
2018/04/18 Python
Python实现简易过滤删除数字的方法小结
2019/01/09 Python
python实现对象列表根据某个属性排序的方法详解
2019/06/11 Python
在Python中预先初始化列表内容和长度的实现
2019/11/28 Python
Pytorch 多维数组运算过程的索引处理方式
2019/12/27 Python
利用Python脚本实现自动刷网课
2020/02/03 Python
python怎么删除缓存文件
2020/07/19 Python
CSS实现的一闪而过的图片闪光效果
2014/04/23 HTML / CSS
运动会领导邀请函
2014/02/05 职场文书
班委竞选演讲稿
2014/04/28 职场文书
百日安全活动总结
2014/05/04 职场文书
投标人廉洁自律承诺书
2014/05/26 职场文书
关于教师节的演讲稿
2014/09/04 职场文书