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中声明只包含一个元素的元组数据方法
Aug 25 Python
深入解析Python中的变量和赋值运算符
Oct 12 Python
Python subprocess模块功能与常见用法实例详解
Jun 28 Python
Python中的集合介绍
Jan 28 Python
Django项目中添加ldap登陆认证功能的实现
Apr 04 Python
Python2.7实现多进程下开发多线程示例
May 31 Python
NumPy统计函数的实现方法
Jan 21 Python
使用Python第三方库pygame写个贪吃蛇小游戏
Mar 06 Python
解决pytorch 交叉熵损失输出为负数的问题
Jul 07 Python
python logging 重复写日志问题解决办法详解
Aug 04 Python
Python用access判断文件是否被占用的实例方法
Dec 17 Python
numpy数据类型dtype转换实现
Apr 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
杏林同学录(六)
2006/10/09 PHP
《PHP编程最快明白》第三讲:php数组
2010/11/01 PHP
解析php dirname()与__FILE__常量的应用
2013/06/24 PHP
PHP中创建图像并绘制文字的例子
2014/11/19 PHP
Discuz!X中SESSION机制实例详解
2015/09/23 PHP
更优雅的事件触发兼容
2011/10/24 Javascript
使用JavaScript构建JSON格式字符串实现步骤
2013/03/22 Javascript
jquery 快速回到页首的方法
2013/12/05 Javascript
jQuery实现的背景动态变化导航菜单效果
2015/08/24 Javascript
Javascript removeChild()删除节点及删除子节点的方法
2015/12/27 Javascript
jQuery 监控键盘一段时间没输入
2016/04/22 Javascript
Bootstrap3 内联单选和多选框
2016/12/29 Javascript
JavaScript 函数的定义-调用、注意事项
2017/04/16 Javascript
使用vue-cli创建项目的图文教程(新手入门篇)
2018/05/02 Javascript
vue2实现搜索结果中的搜索关键字高亮的代码
2018/08/29 Javascript
彻底弄懂 JavaScript 执行机制
2018/10/23 Javascript
Node.js操作MongoDB数据库实例分析
2020/01/19 Javascript
15个简单的JS编码标准让你的代码更整洁(小结)
2020/07/16 Javascript
python实现跨文件全局变量的方法
2014/07/07 Python
python脚本实现分析dns日志并对受访域名排行
2014/09/18 Python
python中Apriori算法实现讲解
2017/12/10 Python
计算机二级python学习教程(1) 教大家如何学习python
2019/05/16 Python
python3.7将代码打包成exe程序并添加图标的方法
2019/10/11 Python
python 爬取马蜂窝景点翻页文字评论的实现
2020/01/20 Python
PyTorch中torch.tensor与torch.Tensor的区别详解
2020/05/18 Python
阻止移动设备(手机、pad)浏览器双击放大网页的方法
2014/06/03 HTML / CSS
YOOX美国官方网站:全球著名的多品牌时尚网络概念店
2016/09/11 全球购物
Swisse官方海外旗舰店:澳大利亚销量领先,自然健康品牌
2017/12/15 全球购物
班组长安全职责
2014/01/05 职场文书
高三毕业寄语
2014/04/10 职场文书
投标文件签署授权委托书范本
2014/10/12 职场文书
英文感谢信范文
2015/01/21 职场文书
2015年城管个人工作总结范文
2015/04/20 职场文书
有关浪费资源的建议书
2015/09/14 职场文书
导游词之苏州寒山寺
2019/12/05 职场文书
如何用JavaScript学习算法复杂度
2021/04/30 Javascript