import os
from PIL import Image
# 兼容 Pillow 新旧版本的抗锯齿选项
try:
RESAMPLE = Image.Resampling.LANCZOS # Pillow ≥ 10
except AttributeError:
RESAMPLE = Image.LANCZOS # Pillow < 10
# 支持的图片扩展名
SUPPORTED_FORMATS = [".jpg", ".jpeg", ".png", ".webp"]
def compress_image(input_path, output_path, quality=70, max_width=800):
try:
img = Image.open(input_path)
# 如果图片宽度超过 max_width,则按比例缩小
if img.width > max_width:
w_percent = max_width / float(img.width)
h_size = int(float(img.height) * w_percent)
img = img.resize((max_width, h_size), RESAMPLE)
# 创建输出目录(如果不存在)
os.makedirs(os.path.dirname(output_path), exist_ok=True)
# 保存压缩图片
img.save(output_path, optimize=True, quality=quality)
print(f"压缩成功: {output_path}")
except Exception as e:
print(f"压缩失败: {input_path} -> {e}")
def compress_images_in_folder(input_folder, output_folder, quality=70, max_width=800):
if not os.path.exists(output_folder):
os.makedirs(output_folder)
for root, _, files in os.walk(input_folder):
for file in files:
ext = os.path.splitext(file)[1].lower()
if ext in SUPPORTED_FORMATS:
input_path = os.path.join(root, file)
rel_path = os.path.relpath(input_path, input_folder)
output_path = os.path.join(output_folder, rel_path)
compress_image(input_path, output_path, quality, max_width)
if __name__ == "__main__":
# 修改这些路径为你自己的文件夹路径
input_dir = r"C:path\photo" # 原图目录
output_dir = r"C:path\photo\y" # 输出目录
compress_quality = 70 # 压缩质量(越低越小,推荐 60-85)
max_width = 800 # 最大宽度限制(超出时等比缩小)
compress_images_in_folder(input_dir, output_dir, compress_quality, max_width)
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
SlimPic 是一个基于 Python 和 Pillow 库开发的小型图片压缩工具,支持批量压缩指定目录下的常见图片格式。它适合摄影师、电商运营、前端工程师或内容创作者在不损失明显画质的前提下,快速缩小图片体积,加快加载速度或便于上传传输。 支持批量处理 JPG、PNG、JPEG、WEBP 等常见图片格式 自动调整图片宽度,超出时按比例缩放(默认最大宽度 800 像素) 支持自定义压缩质量(60~85 区间画质较优) 自动保留原始目录结构,输出至指定路径 兼容 Pillow 新旧版本(自动适配抗锯齿模式)
资源推荐
资源详情
资源评论






























收起资源包目录



共 1 条
- 1
资源评论



Ghostycode
- 粉丝: 94
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 浅谈审查工程预结算技巧.doc
- 2020年无线通信系统安全及策略论文.doc
- 详细设计-追溯服务平台-2018.01.10.doc
- 2018新农药创制近期进展梅向东.pptx
- 国际航空服务中心绿色施工创建汇报.ppt
- 电焊机安全使用规程.doc
- 重庆某公司综合楼消防系统安装工程承包合同.doc
- 企业和行业形象要素示例.doc
- 液压电梯维修保养作业指导书.doc
- [广东]水利枢纽工程土坝防渗墙施工方案.docx
- 2020年基于云计算的档案管理服务创新分析.doc
- 资源化与综合利用.doc
- [安徽]厂房工程安全生产标准化复评汇报.ppt
- 大伙房水库输水工程汇报演示稿.ppt
- 厂房脚手架专项施工方案.doc
- A区7#塔吊安拆方案--副本.doc
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈



安全验证
文档复制为VIP权益,开通VIP直接复制
