当前位置:首页>python>告别一张张右键属性!Python一键批量提取图片尺寸信息,摄影师/设计师效率暴涨

告别一张张右键属性!Python一键批量提取图片尺寸信息,摄影师/设计师效率暴涨

  • 2026-09-22 20:45:58
告别一张张右键属性!Python一键批量提取图片尺寸信息,摄影师/设计师效率暴涨

还在为整理几百张图片的尺寸信息而熬夜吗?3分钟学会这个Python小工具,从此告别重复劳动

🥲 每一个熬夜整理图片的人,都值得被温柔以待

上周,我的一位摄影师朋友小林发来一条语音,语气里满是崩溃:

“客户要我把这次旅拍的所有图片尺寸、分辨率、文件大小整理成表格……300多张图,我一张张右键看属性,复制粘贴到手抽筋,搞了整整一个晚上还没弄完😭”

听完我直接笑了——这不就是典型的重复性机械劳动吗?

作为一个经常和图片打交道的自媒体人,我太懂这种痛了:

  • 摄影师:交片时要整理图片清单,客户要每张图的尺寸信息

  • 设计师:收集素材时要核对图片质量,分辨哪些能用哪些不能用

  • 自媒体运营:发图文时要确认封面图尺寸是否统一

  • 电商运营:上架商品时要批量处理主图和详情图信息

今天就分享一个我用了很久的Python脚本,让你3分钟搞定原本需要一整晚的工作。

🚀 效果预览:一键生成Excel,就是这么丝滑

假设你的电脑里有一个装满图片的文件夹(甚至包含子文件夹),运行这个脚本后:

  1. 输入文件夹路径

  2. 选择是否包含子文件夹

  3. 回车——搞定!

你会得到一个结构清晰的Excel表格,包含以下信息:

文件名
路径
宽度(px)
高度(px)
分辨率
格式
模式
大小(KB)
风景01.jpg
风景01.jpg
1920
1080
1920 x 1080
JPEG
RGB
245.32
人像02.png
子文件夹/人像02.png
800
1200
800 x 1200
PNG
RGBA
512.87

有了这张表,无论是交付客户、整理素材还是做数据统计,都变得无比轻松。


📦 完整代码(复制即用)

import osimport pandas as pdfrom PIL import Imagedef extract_image_info(folder_path, output_file="图片信息.xlsx", include_subfolders=False):    """    批量提取图片尺寸信息到Excel    """    # 支持的图片格式    extensions = ('.jpg', '.jpeg', '.png', '.gif', '.bmp', '.webp', '.tiff')    image_list = []    if include_subfolders:        for root, dirs, files in os.walk(folder_path):            for file in files:                if file.lower().endswith(extensions):                    file_path = os.path.join(root, file)                    rel_path = os.path.relpath(file_path, folder_path)                    try:                        with Image.open(file_path) as img:                            image_list.append({                                '文件名': file,                                '路径': rel_path,                                '宽度(px)': img.width,                                '高度(px)': img.height,                                '分辨率': f"{img.width} x {img.height}",                                '格式': img.format or '未知',                                '模式': img.mode,                                '大小(KB)': round(os.path.getsize(file_path) / 1024, 2)                            })                    except Exception as e:                        print(f"  ⚠️ 无法读取: {file} - {str(e)}")    else:        for item in os.listdir(folder_path):            item_path = os.path.join(folder_path, item)            if os.path.isfile(item_path) and item.lower().endswith(extensions):                try:                    with Image.open(item_path) as img:                        image_list.append({                            '文件名': item,                            '路径': item,                            '宽度(px)': img.width,                            '高度(px)': img.height,                            '分辨率': f"{img.width} x {img.height}",                            '格式': img.format or '未知',                            '模式': img.mode,                            '大小(KB)': round(os.path.getsize(item_path) / 1024, 2)                        })                except Exception as e:                    print(f"  ⚠️ 无法读取: {item} - {str(e)}")    if not image_list:        print("❌ 未找到图片文件")        return    df = pd.DataFrame(image_list)    output_path = os.path.join(folder_path, output_file)    df.to_excel(output_path, index=False)    print(f"✅ 完成!共提取 {len(image_list)} 张图片信息")    print(f"📁 保存至: {output_path}")if __name__ == "__main__":    print("=" * 50)    print("🖼️ 批量提取图片尺寸信息")    print("=" * 50)    path = input("请输入图片文件夹路径: ").strip()    if path.startswith('"') and path.endswith('"'):        path = path[1:-1]    path = path.replace('\\', '/')    if not os.path.exists(path):        print("❌ 路径不存在")        input("按回车键退出...")        exit()    sub = input("是否包含子文件夹?(y/n,默认n): ").strip().lower()    include_sub = sub == 'y'    extract_image_info(path, include_subfolders=include_sub)    input("\n按回车键退出...")

🛠️ 安装依赖(只需要一行命令)

在运行代码之前,需要先安装三个Python库:

bash

pip install pillow pandas openpyxl
简单解释一下这三个库的作用:
  • pillow:读取图片的尺寸、格式、色彩模式等信息

  • pandas:将数据整理成表格格式

  • openpyxl:将表格导出为.xlsx文件

📝 使用教程(手把手版)

第一步:复制代码保存为.py文件

打开记事本(或VS Code、PyCharm等编辑器),将上面的完整代码复制进去,保存为 提取图片尺寸.py。

第二步:获取文件夹路径

Windows用户:打开你的图片文件夹,点击地址栏复制路径

  • 例如:C:\Users\你的用户名\Desktop\我的图片

或者更简单——按住Shift键,右键点击文件夹,选择“复制为路径”。

Mac用户:在文件夹上右键,按住Option键,选择“将xx拷贝为路径名称”。

第三步:运行脚本

打开终端(或命令提示符),cd到脚本所在目录,运行:

bash

python 提取图片尺寸.py
就这么简单!

最新文章

随机文章