以下是一个Python 3编写的统计视频所有元数据并写入Excel的脚本示例:

import os
import subprocess
import xlsxwriter

# 设置要分析的视频文件夹路径和Excel文件名
video_folder = '/path/to/video/folder'
excel_file = 'video_metadata.xlsx'

# 获取视频文件列表
video_files = [os.path.join(video_folder, f) for f in os.listdir(video_folder) if f.endswith('.mp4')]

# 创建Excel工作簿和工作表
workbook = xlsxwriter.Workbook(excel_file)
worksheet = workbook.add_worksheet()

# 写入表头行
headers = ['文件名', '时长', '编码', '分辨率', '比特率']
for i, header in enumerate(headers):
    worksheet.write(0, i, header)

# 遍历视频文件列表,分析每个视频并写入Excel行
for row, video_file in enumerate(video_files, start=1):
    # 从文件名获取视频标题
    video_title = os.path.splitext(os.path.basename(video_file))[0]
    # 使用ffprobe命令获取视频元数据
    ffprobe_cmd = f'ffprobe -v error -show_entries format=duration -of default=noprint_wrappers=1:nokey=1 -show_entries stream=codec_name,width,height,bit_rate -of csv=p=0 "{video_file}"'
    ffprobe_output = subprocess.check_output(ffprobe_cmd, shell=True, universal_newlines=True)
    ffprobe_output = ffprobe_output.strip().split(',')
    # 将元数据写入Excel行
    worksheet.write(row, 0, video_title)
    worksheet.write(row, 1, ffprobe_output[0])
    worksheet.write(row, 2, ffprobe_output[1])
    worksheet.write(row, 3, f'{ffprobe_output[2]}x{ffprobe_output[3]}')
    worksheet.write(row, 4, ffprobe_output[4])

# 关闭Excel工作簿
workbook.close()

说明:

  1. 首先设置要分析的视频文件夹路径和Excel文件名。
  2. 获取视频文件列表,仅选择文件名以“.mp4”结尾的文件。
  3. 创建Excel工作簿和工作表,写入表头行。
  4. 遍历视频文件列表,分析每个视频并写入Excel行。
  5. 使用ffprobe命令获取视频元数据,解析并将其写入Excel行。
  6. 最后关闭Excel工作簿。
我需要一个python3编写的统计视频所有元数据并写入excel的脚本

原文地址: https://www.cveoy.top/t/topic/90o 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录