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

389次阅读  |  发布于5年以前

本文实例讲述了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文本文件操作技巧汇总》、《Python URL操作技巧总结》、《Python图片操作技巧总结》、《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程

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

Copyright© 2013-2020

All Rights Reserved 京ICP备2023019179号-8