我需要一个python3编写的统计视频详细信息并写入excel的脚本
以下是一个示例的Python3脚本,可以统计视频详细信息并将其写入Excel文件中。请注意:该脚本需要安装openpyxl和tqdm库,你可以使用pip安装这两个库。
import os
from openpyxl import Workbook
from openpyxl.utils import get_column_letter
from openpyxl.styles import Font
from tqdm import tqdm
from moviepy.video.io.VideoFileClip import VideoFileClip
# 设置输入文件夹路径和Excel文件名
input_folder = "/path/to/videos"
output_file = "video_details.xlsx"
# 创建Excel文件和工作表
workbook = Workbook()
worksheet = workbook.active
# 设置标题行
headers = [
"文件名",
"时长(秒)",
"视频编码器",
"视频分辨率",
"平均帧率",
"音频编码器",
"音频采样率",
"音频声道数",
]
for i, header in enumerate(headers):
column = get_column_letter(i+1)
cell = worksheet[column+"1"]
cell.value = header
cell.font = Font(bold=True)
# 遍历输入文件夹中的所有视频文件
for i, filename in tqdm(enumerate(os.listdir(input_folder))):
if not filename.endswith(".mp4"):
continue
# 使用MoviePy库获取视频详细信息
video_path = os.path.join(input_folder, filename)
video = VideoFileClip(video_path)
duration = round(video.duration, 2)
video_codec = video.video_codec
video_resolution = str(video.size[0]) + "x" + str(video.size[1])
video_fps = round(video.fps, 2)
audio_codec = video.audio_codec
audio_sample_rate = video.audio_sample_rate
audio_channels = video.audio_channels
# 将详细信息写入Excel文件中
row = [
filename,
duration,
video_codec,
video_resolution,
video_fps,
audio_codec,
audio_sample_rate,
audio_channels,
]
for j, value in enumerate(row):
column = get_column_letter(j+1)
cell = worksheet[column+str(i+2)]
cell.value = value
# 保存Excel文件
workbook.save(output_file)
你可以将上面的代码保存为一个Python文件,然后使用python your_script.py来运行它。请注意,你需要将/path/to/videos替换为实际的视频文件夹路径,并且Excel文件将被保存在当前工作目录中。
原文地址: https://www.cveoy.top/t/topic/90H 著作权归作者所有。请勿转载和采集!