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 制作糗事百科爬虫实例
Sep 22 Python
python实现字典(dict)和字符串(string)的相互转换方法
Mar 01 Python
Python使用Django实现博客系统完整版
Sep 29 Python
tensorflow识别自己手写数字
Mar 14 Python
Python 网络编程之TCP客户端/服务端功能示例【基于socket套接字】
Oct 12 Python
python生成特定分布数的实例
Dec 05 Python
Tensorflow限制CPU个数实例
Feb 06 Python
python3光学字符识别模块tesserocr与pytesseract的使用详解
Feb 26 Python
python 递归调用返回None的问题及解决方法
Mar 16 Python
python批量生成条形码的示例
Oct 10 Python
接口自动化多层嵌套json数据处理代码实例
Nov 20 Python
Python之基础函数案例详解
Aug 30 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
晶体管来复再生式二管收音机
2021/03/02 无线电
php和js交互一例-PHP教程,PHP应用
2007/01/03 PHP
PHP中的常见魔术方法功能作用及用法实例
2015/07/01 PHP
PHP中$GLOBALS['HTTP_RAW_POST_DATA']和$_POST的区别分析
2017/07/03 PHP
二级域名或跨域共享Cookies的实现方法
2008/08/07 Javascript
jquery $.ajax入门应用一
2008/11/19 Javascript
半角全角相互转换的js函数
2009/10/16 Javascript
javascript setTimeout和setInterval 的区别
2009/12/08 Javascript
js检查页面上有无重复id的实现代码
2013/07/17 Javascript
JavaScript中伪协议 javascript:使用探讨
2014/07/18 Javascript
JavaScript比较两个对象是否相等的方法
2015/02/06 Javascript
Bootstrap select实现下拉框多选效果
2016/12/23 Javascript
JavaScript日期对象(Date)基本用法示例
2017/01/18 Javascript
js评分组件使用详解
2017/06/06 Javascript
javascript 中模板方法单例的实现方法
2017/10/17 Javascript
vue项目实现记住密码到cookie功能示例(附源码)
2018/01/31 Javascript
原生JS实现的双色球功能示例
2018/02/02 Javascript
vue-amap根据地址回显地图并mark的操作
2020/11/03 Javascript
Python的Django框架中从url中捕捉文本的方法
2015/07/20 Python
Python3调用微信企业号API发送文本消息代码示例
2017/11/10 Python
Python对列表去重的多种方法(四种方法)
2017/12/05 Python
解决Pytorch 训练与测试时爆显存(out of memory)的问题
2019/08/20 Python
Pytorch根据layers的name冻结训练方式
2020/01/06 Python
python3 使用ssh隧道连接mysql的操作
2020/12/05 Python
css3 伪类选择器快速复习小结
2019/09/10 HTML / CSS
HTML5的结构和语义(5):交互
2008/10/17 HTML / CSS
加拿大最大的书店:Indigo
2017/01/01 全球购物
自考生自我评价分享
2014/01/18 职场文书
带薪年假请假条
2014/02/04 职场文书
房地产财务部员工岗位职责
2014/03/12 职场文书
绿色家庭事迹材料
2014/05/01 职场文书
纪律教育学习月活动总结
2014/08/27 职场文书
学生上课说话检讨书
2014/10/25 职场文书
给客户的感谢信
2015/01/21 职场文书
初中语文教学随笔
2015/08/15 职场文书
建国70周年的心得体会(2篇)
2019/09/20 职场文书