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中获取网页状态码的两个方法
Nov 03 Python
Linux系统上Nginx+Python的web.py与Django框架环境
Dec 25 Python
Python3enumrate和range对比及示例详解
Jul 13 Python
阿里云ECS服务器部署django的方法
Aug 29 Python
python二维键值数组生成转json的例子
Dec 06 Python
Python random模块制作简易的四位数验证码
Feb 01 Python
Python for循环搭配else常见问题解决
Feb 11 Python
基于Python爬取爱奇艺资源过程解析
Mar 02 Python
Jupyter打开图形界面并画出正弦函数图像实例
Apr 24 Python
浅谈Python类的单继承相关知识
May 12 Python
python中24小时制转换为12小时制的方法
Jun 18 Python
python人工智能human learn绘图可创建机器学习模型
Nov 23 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
WINDOWS下php5.2.4+mysql6.0+apache2.2.4+ZendOptimizer-3.3.0配置
2008/03/28 PHP
php中magic_quotes_gpc对unserialize的影响分析
2014/12/16 PHP
Thinkphp和onethink实现微信支付插件
2016/04/13 PHP
php魔术方法功能与用法实例分析
2016/10/19 PHP
PHP给源代码加密的几种方法汇总(推荐)
2018/02/06 PHP
图片轮换效果实现代码(点击按钮停止执行)
2013/04/12 Javascript
利用jquery写的左右轮播图特效
2014/02/12 Javascript
JS和函数式语言的三特性
2014/03/05 Javascript
Ext4.2的Ext.grid.plugin.RowExpander无法触发事件解决办法
2014/08/15 Javascript
js中confirm实现执行操作前弹出确认框的方法
2014/11/01 Javascript
JavaScript中自带的 reduce()方法使用示例详解
2016/08/10 Javascript
jQuery 移动端拖拽(模块化开发,触摸事件,webpack)
2016/10/28 Javascript
JS Input里添加小图标的两种方法
2017/11/11 Javascript
vue 全选与反选的实现方法(无Bug 新手看过来)
2018/02/09 Javascript
vue中axios解决跨域问题和拦截器的使用方法
2018/03/07 Javascript
原生js实现Flappy Bird小游戏
2018/12/24 Javascript
JS实现碰撞检测效果
2020/03/12 Javascript
使用JavaScript获取扫码枪扫描得到的条形码的思路代码详解
2020/06/10 Javascript
跟老齐学Python之关于循环的小伎俩
2014/10/02 Python
python轻松实现代码编码格式转换
2015/03/26 Python
Python中使用urllib2模块编写爬虫的简单上手示例
2016/01/20 Python
Python中的字符串类型基本知识学习教程
2016/02/04 Python
用Python写王者荣耀刷金币脚本
2017/12/21 Python
python实现日常记账本小程序
2018/03/10 Python
Python实现求解括号匹配问题的方法
2018/04/17 Python
python顺序的读取文件夹下名称有序的文件方法
2018/07/11 Python
python递归法解决棋盘分割问题
2019/07/17 Python
数控技术专业推荐信
2013/11/01 职场文书
学校师德承诺书
2014/05/23 职场文书
离婚协议书范本2014
2014/10/27 职场文书
2014年社区综治工作总结
2014/11/17 职场文书
党员个人党性分析材料
2014/12/18 职场文书
专项资金申请报告
2015/05/15 职场文书
美容院员工规章制度
2015/08/05 职场文书
2017春节晚会开幕词
2016/03/03 职场文书
「睡美人」爱洛公主粘土人开订
2022/03/22 日漫