用 Python 批量校验图片尺寸与文件命名规范的实用做法

举报
yd_295675147 发表于 2026/11/02 20:22:14 2026/11/02
【摘要】 最近整理一批活动海报和产品图时,踩过一个很实在的坑:图片本身没有问题,但尺寸和文件名一乱,后续排版、上传和检索全都跟着出错。后来我固定用一套 Python 脚本先跑一遍校验,不合格的直接列出来改,省了不少返工。我的做法分三步。第一步是定规则,写进脚本而不是只记在文档中。比如主图宽高必须是 1200×800,详情图最短边不低于 800,文件只能是 jpg、png、webp,文件名只允许小写字母...

最近整理一批活动海报和产品图时,踩过一个很实在的坑:图片本身没有问题,但尺寸和文件名一乱,后续排版、上传和检索全都跟着出错。后来我固定用一套 Python 脚本先跑一遍校验,不合格的直接列出来改,省了不少返工。

我的做法分三步。第一步是定规则,写进脚本而不是只记在文档中。比如主图宽高必须是 1200×800,详情图最短边不低于 800,文件只能是 jpg、png、webp,文件名只允许小写字母、数字、下划线和连字符,形如 20261102_banner_main_01.jpg。规则写死在字典里,换一批图只要改数值。

第二步是读真实信息,不要只看文件后缀。用 Pillow 的 Image.open 读取图片的真实宽高,再用 os.path.getsize 看文件大小;遇到损坏文件会直接抛异常,正好筛出来。命名用正则 ^[a-z0-9_-]+.(jpg|png|webp)$ 校验,中文、空格、大写后缀和多余的点都能筛出来。

第三步是出报告。脚本按文件夹递归扫描,把尺寸不符、命名不符、文件损坏和疑似重复分成四类,写进一个 CSV,包含路径、实际尺寸、期望尺寸和问题描述。改完再跑一遍,直到报告为空才算通过。正式跑之前,先在副本上试一遍,不要直接覆盖原图。

这套做法最大的好处是可复用、可交接。新同事接手时,不用逐张打开图片核对,看报告就知道哪些图没过关、期望尺寸是多少。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。