使用moviepy.editor为mp4文件夹查找文件

问题描述

这是一个我用一个非常不切实际的创可贴解决的问题:

我尝试编写一小段代码将 mp4 文件文件夹转换为 mp3。在尝试了这里找到的几种解决方案都无济于事后,我自己编写了代码,尝试尽可能简单,并且几乎可以正常工作。我使用 os.listdir 制作了一个字符串列表,这些字符串是带有 .mp4 的文件名,然后遍历列表以将它们转换为末尾带有 .mp3 的字符串。

import moviepy.editor as mp
import os

#   original working code for one file at a time : 
#   video = mp.VideoFileClip(r"input.mp4")
#   video.audio.write_audiofile(r"output.mp3")

path = "C:\\Users\Alex\Desktop\Programmes\mp4mp3\mp4"

liste_final = []
print(os.listdir(path))
liste_test = os.listdir(path)

for i in liste_test:
    liste_final.append(i.replace('4','3'))

for f,b in zip(liste_test,liste_final):
    print(f,b)
    video = mp.VideoFileClip(f)
    video.audio.write_audiofile(b)

但是代码无法找到 mp4 文件,除非我实际上将它们与 .py 文件(mp3mp4 文件夹)和子文件夹(名为 mp4)放在同一个文件夹中,我通常应该在那里存储音乐。

为了清楚起见,这里有一个 ms paint,其中第 1 种有效,第 2 种含有错误消息。

附加信息:我使用 VS 代码在 Windows 10 上,我使用 python 3.9.5 64 位作为解释器。

错误信息:

 ['Challengers.mp4','genos2.mp4']
Challengers.mp4 Challengers.mp3
Traceback (most recent call last):
  File "c:\Users\Alex\Desktop\Programmes\mp4mp3\full.py",line 23,in <module>
    video = mp.VideoFileClip(f)
  File "C:\Users\Alex\Desktop\Programmes\Python\lib\site-packages\moviepy\video\io\VideoFileClip.py",line 88,in __init__
    self.reader = FFMPEG_VideoReader(filename,pix_fmt=pix_fmt,File "C:\Users\Alex\Desktop\Programmes\Python\lib\site-packages\moviepy\video\io\ffmpeg_reader.py",line 35,in __init__
    infos = ffmpeg_parse_infos(filename,print_infos,check_duration,line 270,in ffmpeg_parse_infos
    raise IOError(("MoviePy error: the file %s Could not be found!\n"
OSError: MoviePy error: the file Challengers.mp4 Could not be found!
Please check that you entered the correct path.
PS C:\Users\Alex\Desktop\Programmes\mp4mp3> 

提前致谢,我觉得答案很接近而且很小,但我无法理解。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...