Python-嗨格式 之音频转换,ncm转mp3

缘由:本想下载一些歌到车机播放,发现大部分是ncm格式的。
查了下才知道是音乐软件限制了,会员下载的音频文件为.ncm格式,目前只能在网易云音乐APP上播放,不支持在其他音频播放软件或音频设备使用。

百度转换软件,首选这个

Python-嗨格式 之音频转换,ncm转mp3_第1张图片

试试吧,使用 嗨格式视频转换器 批量转为.mp3,不过比较尴尬,发现这个软件需要vip,否则只成功2/3

然后意外发现解决办法了:
转为.mp3后,完整文件其实在隐藏文件__mmc__里 (用Everything查找,确认实际路径),修改.dat为.mp3文件即可。

然后就简单了,这种批量操作当然不可能手动去改啦,交给py吧
使用以下脚本 批量重命名 

#!/usr/bin/python3
# -*- coding: utf-8 -*-
 
import os
import re
import shutil
 
# 修改为实际路径
dir_path = r'C:\Users\Administrator\Desktop\嗨格式视频转换器\___mmc___'
dest_dir_path = os.path.dirname(dir_path)
list_path = os.listdir(dir_path)
# print(list_path)
 
for filename in list_path:
    try:
        file_path = os.path.join(dir_path, filename)
        if '.dat' in filename:
            new_filename = filename.replace('.dat', '.mp3')
            if re.search('^\d+_', new_filename):
                prefix = new_filename.split('_')[0]
                new_filename = new_filename.replace(prefix, '')
            new_file_path = os.path.join(dir_path, new_filename)
            print('# rename: {} -> {}'.format(filename, new_filename))
            # 重命名文件
            os.rename(file_path, new_file_path)
            # 移动文件,如果目标文件已经存在则覆盖
            dest_file_path = os.path.join(dest_dir_path, new_filename)
            shutil.move(new_file_path, dest_file_path)
    except Exception as e:
        print('{}, Error: {}'.format(filename, e))
 
print('完成')

你可能感兴趣的:(Python,音视频,python)