本文案例是批量修改音频文件,简单修改也可用于批量修改图片、视频等的其他文件,这个功能对于有收藏癖,同时又有强迫症的宅男,可以说是非常实用(因为我就是案例)。
新手上路,老司机勿喷。作为小白,我暂时还写不出非常强壮、高级的代码的,但是幸好,“人生苦短,我用python。”所以简单、易用就好。本文正是从这个目的出发,用简单的代码,实现同样的目的,我写的容易,你调的方便。
******************************下面干活******************************
pre:下面代码由python3完成
功能实现二步搞定:
第一步:提取序号与文件名的键值对。
本案例中音频文件来自于喜马拉雅,下载音频的同时,也下载了包括序号和文件名的json文件(eg.5836817list.json),所以第一步是解析这个json文件,生成dict。
#导入包
import json
with open(r' D:\Download\XMLY\5836817list.json','r',encoding='utf8') as c:
#红字部分D:\Download\XMLY\5836817list.json为json文件的位置,要替换成你自己的json位置。
content=json.load(c)
#print(content[:2])id_list=[]
title_list=[]
dict={}
for i in range(len(content)):
id=content[i]['id']
title=content[i]['title']
id_list.append(id)
title_list.append(title)
dict1={id_list[i]:title_list[i]}
dict.update(dict1)
i+=1
生成的dict文件,长这个样子
第二步:
import os
path=r'D:\Download\XMLY\5836817'
#红字部分D:\Download\XMLY\5836817为等待修改的文件所在文件夹,要修改为你要修改的文件看在文件夹地址
filelist=os.listdir(path)
for f in filelist:filepath=os.path.join(path,f)
try:
if f.endswith(" m4a"): # 红字部分 m4a 为音频扩展名,要修改为你的文件的扩展名
portion=f.split('.')[0]
portion=int(portion)
newname=dict[portion] + '. m4a'
newname=newname.replace('/|-',' ')
newnamepath=os.path.join(path,newname)
os.rename(filepath,newnamepath)
print('now handling the {0}'.format(newname))
except:
continue
print('all done')
修改文件名前:
修改文件名后:
欢迎交流