文件名结构
时间戳+音频内容+后缀名,如下图:
上图中“我们” “我爱你们” 就是音频内容
功能
删除音频内容相同的多余重复文件,保留最后时间戳的音频文件。
以上图为例,需要删除音频内容为“我们”的前两个文件。
库
python的os库就可以了
代码段
import os
path = './test' #音频所在的根目录,绝对路径、相对路径都可以
content_list = [] #用于存放音频文件名称
dup_files = [] #存放需要删除的文件名称
for root, dirs, files in os.walk(path):
for file in files:
file_path = os.sep.join([root,file]) #音频文件的绝对路径
file_name, file_type = os.path.splitext(file)
text = file_name.split('_')[2] #将文件名中隐含的音频内容提取出来
if len(content_list)>=1:
if text == content_list[-1].split('\t')[-1]: #判断当前音频内容与上一个文件的音频内容是否相等
dup_files.append(content_list[-1].split('\t')[0]) #将需要删除的重复音频放入dup_files列表中
content_list.append(file_path+'\t'+text) #将音频文件名称与音频内容放入content_list当中,以便对比
print(dup_files)
for dup_file in dup_files:
if os.path.exists(dup_file): #判断是否存在重复的音频
os.remove(dup_file) #删除多余的重复音频文件
运行结果
删除了多余的重复音频文件。