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中使用PIL库实现图片高斯模糊实例
Feb 08 Python
巧用python和libnmapd,提取Nmap扫描结果
Aug 23 Python
python使用邻接矩阵构造图代码示例
Nov 10 Python
Python中摘要算法MD5,SHA1简介及应用实例代码
Jan 09 Python
pandas实现DataFrame显示最大行列,不省略显示实例
Dec 26 Python
Python实现屏幕录制功能的代码
Mar 02 Python
python自动脚本的pyautogui入门学习
Apr 01 Python
Python退出时强制运行一段代码的实现方法
Apr 29 Python
Pytorch转onnx、torchscript方式
May 25 Python
python怎么判断模块安装完成
Jun 19 Python
python利用递归方法实现求集合的幂集
Sep 07 Python
python 实现表情识别
Nov 21 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入门学习知识点三 PHP上传
2011/07/14 PHP
php网站判断用户是否是手机访问的方法
2013/11/01 PHP
destoon常用的安全设置概述
2014/06/21 PHP
php调用shell的方法
2014/11/05 PHP
纯PHP代码实现支付宝批量付款
2015/12/24 PHP
php抽象方法和抽象类实例分析
2016/12/07 PHP
PHP读取CSV大文件导入数据库的实例
2017/07/24 PHP
php gethostbyname获取域名ip地址函数详解
2010/01/24 Javascript
jqPlot 基于jquery的画图插件
2011/04/26 Javascript
基于jQuery的弹出框插件
2012/03/18 Javascript
JavaScript基本编码模式小结
2012/05/23 Javascript
caller和callee的区别介绍及演示结果
2013/03/10 Javascript
JavaScript的Module模式编程深入分析
2013/08/13 Javascript
jQuery性能优化技巧分析
2015/02/20 Javascript
JavaScript检测字符串中是否含有html标签实现方法
2015/07/01 Javascript
jQuery简单实现遍历单选框的方法
2017/03/06 Javascript
axios基本入门用法教程
2017/03/25 Javascript
socket.io学习教程之基本应用(二)
2017/04/29 Javascript
jQuery Json数据格式排版高亮插件json-viewer.js使用方法详解
2017/06/12 jQuery
html中通过JS获取JSON数据并加载的方法
2017/11/30 Javascript
JavaScript装饰者模式原理与用法实例详解
2020/03/09 Javascript
Eclipse + Python 的安装与配置流程
2013/03/05 Python
使用Python的Flask框架实现视频的流媒体传输
2015/03/31 Python
Python实现的数据结构与算法之队列详解
2015/04/22 Python
Python中在脚本中引用其他文件函数的实现方法
2016/06/23 Python
Python中datetime模块参考手册
2017/01/13 Python
PyQt5 QTable插入图片并动态更新的实例
2019/06/18 Python
python基于gevent实现并发下载器代码实例
2019/11/01 Python
协程Python 中实现多任务耗资源最小的方式
2020/10/19 Python
实习生自我鉴定
2013/12/12 职场文书
关于爱国的演讲稿
2014/05/07 职场文书
傅雷家书读书笔记
2015/06/29 职场文书
2015教师个人师德工作总结
2015/10/23 职场文书
初中语文教学研修日志
2015/11/13 职场文书
民事纠纷协议书
2016/03/23 职场文书
2016年读书月活动总结范文
2016/04/06 职场文书