首页 > 解决方案 > 文件夹中所有 mp4 文件的 Python3 clip.duration

问题描述

我是 Python 新手(使用 Python 3.6),想提取一个文件夹中所有 mp4 文件的持续时间(以秒为单位)。我的代码是:

path2 = path_directory
from moviepy.video.io.VideoFileClip import VideoFileClip
    for root, dirs, files in os.walk(path2):
        for filename in files:
            clip = VideoFileClip(files)
            print(clip.duration)

如果我clip = VideoFileClip("name_of_one_specific_file.mp4")正确定义它会打印该特定文件的长度(即 590 秒),所以我猜错误在于我如何遍历所有文件。我需要一个我在 path2 中的 245 个 mp4 文件的持续时间列表。

非常感谢您提前。

标签: python-3.xos.walk

解决方案


你只是有一个小错误:

path2 = path_directory
from moviepy.video.io.VideoFileClip import VideoFileClip
for root, dirs, files in os.walk(path2):
    for filename in files:
        clip = VideoFileClip(filename) # <= !!!
        print(clip.duration)

你想开filename,没有filesfilename是一个特定文件的名称,files是目录中所有文件的列表。


推荐阅读