Python如何获取视频文件的大小和时长?.docx
第
Python如何获取视频文件的大小和时长?
结果如下:
③自定义时间转化函数
deftime_convert(seconds):
M,H=60,3600
ifsecondsM:
returnf00:00:0{seconds}ifseconds10elsef00:00:{str(seconds)}
elifsecondsH:
_M=int(seconds//M)
_S=int(seconds%M)
returnf00:{f0{_M}if_M10elsestr(_M)}:{f0{_S}if_S10elsestr(_S)}
else:
_H=int(seconds//H)
_M=int(seconds%H//M)
_S=int(seconds%H%M)
returnf{f0{_H}if_H10elsestr(_H)}:{f0{_M}if_M10elsestr(_M)}:{f0{_S}if_S10elsestr(_S)}
由于下面介绍的VideoFileClip()方法,获取时长的单位是秒。因此,需将秒换成合适的时分秒格式。若时间超过一分钟,换算成分钟:秒,若超过一小时,就换算成小时:分钟:秒格式。
④获取文件大小和时长
x=[]
y=[]
foriinuseful_dir:
dir_size=str(round(os.path.getsize(i)/1024/1024,1))+M
clip=VideoFileClip(i)
dir_time=time_convert(clip.duration)
x.append(dir_size)
y.append(dir_time)
df=pd.DataFrame({文件大小:x,文件时长:y})
df
结果如下:
⑤将得到的数据存储到Excel中
df.to_excel(info.xlsx,index=False)
最终效果如图所示: