Python 3.9环境使用PyDub合并MP3报FileNotFoundError问题咨询
问题排查与解决步骤
你遇到的
FileNotFoundError大概率不是指向你要读取的MP3文件,而是pydub调用的底层解码依赖FFmpeg未找到导致的,和Python 3.9版本兼容性关联度极低,可按以下顺序排查:
第一步:排除MP3路径本身错误
先运行以下代码验证路径有效性:
import os mp3_path = r'C:/Users/ogiga/Desktop/Nice/FinalVideo.mp3' print(os.path.exists(mp3_path))
如果输出为True,说明路径完全正常,直接进入下一步;如果输出为False,再检查文件后缀、文件夹拼写、文件是否被移动删除即可。
第二步:配置FFmpeg依赖
pydub本身不具备MP3解码能力,需要调用系统安装的FFmpeg工具实现读写,Windows环境默认没有预装FFmpeg,按以下步骤配置:
- 下载对应系统架构的FFmpeg Windows正式编译包
- 解压压缩包后,进入内部的
bin文件夹,确认存在ffmpeg.exe、ffprobe.exe两个可执行文件 - 任选以下一种配置方式即可:
- 环境变量配置:将bin文件夹的完整路径添加到系统环境变量
Path中,添加完成后必须重启IDE/命令行工具使环境变量生效,再重新运行你的代码 - 代码内手动指定(无需改环境变量,优先级更高):
from pydub import AudioSegment # 将下方路径替换为你本地的ffmpeg、ffprobe实际存储路径 AudioSegment.converter = r'C:\xxx\ffmpeg\bin\ffmpeg.exe' AudioSegment.ffprobe = r'C:\xxx\ffmpeg\bin\ffprobe.exe' firstfile = AudioSegment.from_mp3(r'C:/Users/ogiga/Desktop/Nice/FinalVideo.mp3') - 环境变量配置:将bin文件夹的完整路径添加到系统环境变量
第三步:兼容问题修复
如果完成以上两步仍然报错,执行命令升级pydub到最新版本即可解决Python 3.9适配问题:
pip install --upgrade pydub
内容的提问来源于stack exchange,提问作者Ognjen Ognjanovic
相关产品推荐
相关产品推荐

