Python利用pydub实现wav转mp3

内容分享3周前发布
0 5 0

最近,需要大量地将wav转mp3,于是用python写了个小脚本直接一键转换,这里做个记录。

环境

  • windows 10
  • ffmpeg
  • python3
  • pydub

前期准备

环境搭建

第一安装ffmpeg,参考大佬的博客

然后在命令行运行命令安装pydub:

pip install pydub

然后准备一个文件夹,里面是待转换的wav文件:

Python利用pydub实现wav转mp3

程序编写

程序想要实现的功能是遍历文件夹内的wav文件路径,然后依次将wav文件转为mp3文件输出。

第一,编写转换函数:

from pydub import AudioSegment
def wav2mp3(filepath, savepath):
    sourcefile = AudioSegment.from_wav(filepath)
    filename = filepath.split( / )[-1].split( .wav )[0].replace(   ,  _ ) +  .mp3 
    print(filename)
    sourcefile.export(savepath + filename, format="mp3")

这里的filename注意需要加上.mp3后缀

然后书写函数获取wav文件路径,保存为列表输出:

def getFileName(filepath):
    file_list = []
    for root,dirs,files in os.walk(filepath):
        for filespath in files:
            if  wav  in filespath.split( . )[-1]:
                file_list.append(os.path.join(root,filespath))
    return file_list

最后书写main函数遍历路径并转换:

if __name__ ==  __main__ :
    folder =  D:/yuanshen/emmmm/ 
    savepath =  D:/yuanshen/emmm1/ 
    wav_list = getFileName(folder)
    for item in wav_list:
        wav2mp3(item, savepath)

至此,程序编写完毕

程序运行

在命令行输入命令运行脚本:

python wav2mp3.py

然后就能看到程序开始转换:

Python利用pydub实现wav转mp3

程序运行结果:

Python利用pydub实现wav转mp3

© 版权声明

相关文章

5 条评论

您必须登录才能参与评论!
立即登录
  • 头像
    啊琳 读者

    学习studying

    无记录
  • 头像
    亓夕 读者

    其他格式的可以转化吗

    无记录
  • 头像
    小韦深度解析 读者

    @灬DD 可以的,详见pydub官方文档,就几行代码

    无记录
  • 头像
    冬涵黎 投稿者

    我按你的操作,遍历是空的,啥也没遍历到

    无记录
  • 头像
    广西康态种植有限公司王芳 读者

    @魏小黑 这是为什么啊

    无记录