Python编程修改MP3文件名称的方法


Posted in Python onApril 19, 2017

本文实例讲述了Python编程修改MP3文件名称的方法。分享给大家供大家参考,具体如下:

最近刚刚开始学习Python,顺便锻炼思维写的一个小函数,专门用来修改那些网上下载的mp3歌曲后名称不正确时候,使用该函数,使用方法

ModifyMp3FileInfo(r'E:/音乐/12345.mp3')

Python代码:

#!修改下载的Mp3文件名称为正确的Mp3文件
 def ModifyMp3FileInfo(filename):
   mp3Id3V1 = {
     "tag":{"valuepos":(0,3),"value":""},
     "SongName":{"valuepos":(3,33),"value":""},
     "SongPeople":{"valuepos":(33,63),"value":""},
     "Zj":{"valuepos":(63,93),"value":""},
     "Year":{"valuepos":(93,97),"value":""},
     "Bak":{"valuepos":(97,125),"value":""}
     }
   try:
     f = open(filename,'rb')
     f.seek(-128,2)
     sdata = f.read(3)
     if sdata == 'TAG':
       f.seek(-128,2)
       sdata = f.read(128)
       for tag,subitem in mp3Id3V1.items():
         subitem["value"] = sdata[subitem["valuepos"][0]:subitem["valuepos"][1]].replace('/00','').strip()
         print '%s='%tag,'%s'%subitem["value"],'/n'
       f.close()
       import os
       if mp3Id3V1["SongName"]["value"]!='':
         test = [os.path.dirname(filename),'//']
         test.append(mp3Id3V1["SongName"]["value"])
         test.append('.mp3')
         newfilename = ''.join(test)
         print newfilename
         if os.path.exists(newfilename):
           test = ['Filename ',newfilename,' Has Existed']
           print ''.join(test)
         else:
           try:
             os.rename(filename,newfilename)
           except WindowsError,e:
             if e.winerror:
               print 'Modify filename failed ,maybe the file is inuse'
             else:
               print 'UnKnown error'
     else:
       print 'Is not a MP3 file'
   except IOError:
     print 'Open file failed'

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

Python 相关文章推荐
python在多玩图片上下载妹子图的实现代码
Aug 13 Python
Python监控主机是否存活并以邮件报警
Sep 22 Python
Android应用开发中Action bar编写的入门教程
Feb 26 Python
python实现神经网络感知器算法
Dec 20 Python
python+matplotlib绘制旋转椭圆实例代码
Jan 12 Python
对Python中DataFrame选择某列值为XX的行实例详解
Jan 29 Python
分享8点超级有用的Python编程建议(推荐)
Oct 13 Python
基于Tensorflow使用CPU而不用GPU问题的解决
Feb 07 Python
python-docx文件定位读取过程(尝试替换)
Feb 13 Python
Python selenium抓取虎牙短视频代码实例
Mar 02 Python
使用darknet框架的imagenet数据分类预训练操作
Jul 07 Python
手把手教你用Django执行原生SQL的方法
Feb 18 Python
Python实现将罗马数字转换成普通阿拉伯数字的方法
Apr 19 #Python
Python连接SQLServer2000的方法详解
Apr 19 #Python
Django自定义插件实现网站登录验证码功能
Apr 19 #Python
Python列表切片用法示例
Apr 19 #Python
Python编程判断这天是这一年第几天的方法示例
Apr 18 #Python
Python编程实现输入某年某月某日计算出这一天是该年第几天的方法
Apr 18 #Python
浅析python递归函数和河内塔问题
Apr 18 #Python
You might like
php 获取全局变量的代码
2011/04/21 PHP
那些年一起学习的PHP(三)
2012/03/22 PHP
下拉列表多级联动dropDownList示例代码
2013/06/27 PHP
PHP 获取 ping 时间的实现方法
2017/09/29 PHP
JavaScript:new 一个函数和直接调用函数的区别分析
2013/07/10 Javascript
js实现简单的星级选择器提交效果适用于评论等
2013/10/18 Javascript
javascript实现的淘宝旅行通用日历组件用法实例
2015/08/03 Javascript
localResizeIMG先压缩后使用ajax无刷新上传(移动端)
2015/08/11 Javascript
jQuery实现鼠标经过像翻页和描点链接效果
2016/08/08 Javascript
jQuery Validate验证表单时多个name相同的元素只验证第一个的解决方法
2016/12/24 Javascript
jquery hover 不停闪动问题的解决方法(亦为stop()的使用)
2017/02/10 Javascript
angularjs中的$eval方法详解
2017/04/24 Javascript
JavaScript之DOM插入更新删除_动力节点Java学院整理
2017/07/03 Javascript
Angular2使用vscode断点调试ts文件的方法
2017/12/13 Javascript
详解Vue CLI3配置解析之css.extract
2018/09/14 Javascript
在vue中使用express-mock搭建mock服务的方法
2018/11/07 Javascript
详解基于React.js和Node.js的SSR实现方案
2019/03/21 Javascript
vue的三种图片引入方式代码实例
2019/11/19 Javascript
vue-resourc发起异步请求的方法
2020/02/11 Javascript
Node.js API详解之 os模块用法实例分析
2020/05/06 Javascript
微信小程序中使用 async/await的方法实例分析
2020/05/06 Javascript
使用httplib模块来制作Python下HTTP客户端的方法
2015/06/19 Python
tensorflow实现图像的裁剪和填充方法
2018/07/27 Python
Python log模块logging记录打印用法解析
2020/01/20 Python
Python输出指定字符串的方法
2020/02/06 Python
python对接ihuyi实现短信验证码发送
2020/05/10 Python
仓库理货员岗位职责
2013/12/18 职场文书
工商治理实习生的自我评价
2014/01/15 职场文书
优秀交警事迹材料
2014/01/26 职场文书
数学与统计学院学生个人职业生涯规划书
2014/02/10 职场文书
《石榴》教学反思
2014/03/02 职场文书
求职自我评价范文100字
2014/09/23 职场文书
退休党员个人对照检查材料思想汇报
2014/09/29 职场文书
2016暑期政治学习心得体会
2016/01/23 职场文书
2016优秀护士先进个人事迹材料
2016/02/25 职场文书
Go gorilla/sessions库安装使用
2022/08/14 Golang