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的几种开发工具介绍
Mar 07 Python
wxpython 学习笔记 第一天
Mar 16 Python
压缩包密码破解示例分享(类似典破解)
Jan 17 Python
python的三目运算符和not in运算符使用示例
Mar 03 Python
深入源码解析Python中的对象与类型
Dec 11 Python
Python运维开发之psutil库的使用详解
Oct 18 Python
使用python对文件中的数值进行累加的实例
Nov 28 Python
python列表使用实现名字管理系统
Jan 30 Python
django写用户登录判定并跳转制定页面的实例
Aug 21 Python
Python要如何实现列表排序的几种方法
Feb 21 Python
3种适用于Python的疯狂秘密武器及原因解析
Apr 29 Python
python基础详解之if循环语句
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无限极分类递归排序实现方法
2014/11/11 PHP
php实现跨域提交form表单的方法【2种方法】
2016/10/17 PHP
总结的一些PHP开发中的tips(必看篇)
2017/03/24 PHP
php批量转换文件夹下所有文件编码的函数类
2017/08/06 PHP
php对象工厂类完整示例
2018/08/09 PHP
关于PhpStorm设置点击编辑文件自动定位源文件的实现方式
2020/12/30 PHP
JQuery.ajax传递中文参数的解决方法 推荐
2011/03/28 Javascript
JS的replace方法介绍
2012/10/20 Javascript
jquery实现仿Flash的横向滑动菜单效果代码
2015/09/17 Javascript
基于Jquery和CSS3制作数字时钟附源码下载(CSS3篇)
2015/11/24 Javascript
浅谈javascript中的Function和Arguments
2016/08/30 Javascript
浅谈js的解析顺序 作用域 严格模式
2017/10/23 Javascript
详解mpvue中小程序自定义导航组件开发指南
2019/02/11 Javascript
详解微信小程序文件下载--视频和图片
2019/04/24 Javascript
[00:32]2018DOTA2亚洲邀请赛EG出场
2018/04/03 DOTA
[00:32]2018DOTA2亚洲邀请赛出场——VP
2018/04/04 DOTA
python时间整形转标准格式的示例分享
2014/02/14 Python
python之wxPython菜单使用详解
2014/09/28 Python
用python实现简单EXCEL数据统计的实例
2017/01/24 Python
对Python中DataFrame按照行遍历的方法
2018/04/08 Python
python自定义函数实现一个数的三次方计算方法
2019/01/20 Python
python处理DICOM并计算三维模型体积
2019/02/26 Python
解决python中import文件夹下面py文件报错问题
2020/06/01 Python
python openpyxl模块的使用详解
2021/02/25 Python
美国一家著名的手表在线折扣网站:Discount Watch Store
2020/02/24 全球购物
介绍一下#error预处理
2015/09/25 面试题
七年级地理教学反思
2014/01/26 职场文书
经典促销广告词大全
2014/03/19 职场文书
模特大赛策划方案
2014/05/28 职场文书
大型公益活动策划方案
2014/08/20 职场文书
交通工程专业推荐信
2014/09/06 职场文书
酒店前台岗位职责
2015/04/16 职场文书
Python生成九宫格图片的示例代码
2021/04/14 Python
Js类的构建与继承案例详解
2021/09/15 Javascript
python 离散点图画法的实现
2022/04/01 Python