以下是一个使用mediainfo统计视频大小并写入excel的Python 3脚本。需要安装openpyxl和pymediainfo库。

import os
import openpyxl
from pymediainfo import MediaInfo

# 将文件大小转换为MB
def bytes_to_mb(size):
    return size / (1024 * 1024)

# 获取文件信息
def get_file_info(file_path):
    media_info = MediaInfo.parse(file_path)
    for track in media_info.tracks:
        if track.track_type == "Video":
            return track

# 获取文件列表
def get_files(dir_path):
    files = []
    for file_name in os.listdir(dir_path):
        if file_name.endswith(".mp4") or file_name.endswith(".avi") or file_name.endswith(".mkv"):
            files.append(file_name)
    return files

# 创建Excel文件
def create_excel(file_path):
    workbook = openpyxl.Workbook()
    sheet = workbook.active
    sheet.title = "Video Sizes"
    sheet["A1"] = "File Name"
    sheet["B1"] = "Size (MB)"
    workbook.save(file_path)
    return workbook

# 写入文件信息到Excel
def write_excel(file_path, file_name, size):
    workbook = openpyxl.load_workbook(file_path)
    sheet = workbook.active
    row_num = sheet.max_row + 1
    sheet.cell(row=row_num, column=1, value=file_name)
    sheet.cell(row=row_num, column=2, value=size)
    workbook.save(file_path)

# 主函数
def main():
    dir_path = input("请输入视频文件夹路径:")
    excel_path = input("请输入要保存的Excel文件路径:")
    workbook = create_excel(excel_path)
    files = get_files(dir_path)
    for file_name in files:
        file_path = os.path.join(dir_path, file_name)
        file_info = get_file_info(file_path)
        size = bytes_to_mb(file_info.size)
        write_excel(excel_path, file_name, size)
    print("文件信息已成功写入Excel。")

if __name__ == "__main__":
    main()

运行该脚本后,将提示输入视频文件夹路径和要保存的Excel文件路径。程序将自动扫描视频文件夹中的所有.mp4、.avi和.mkv文件,并将它们的文件名和大小写入Excel文件。

需要一个python3编写的使用mediainfo统计视频大小并写入excel的脚本

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

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