当前位置: 首页 > news >正文

网站运行速度优化西安到北京火车票多少钱

网站运行速度优化,西安到北京火车票多少钱,wordpress哪里设置上传大小,关键词调整排名软件这个脚本具有以下功能: 1、处理指定文件夹中所有的 JPG/JPEG 图片 2、将图片调整为 480640 像素的尺寸,保持原图比例并在空白处填充白色 3、设置分辨率为 300dpi,确保为 24 位真彩色 4、自动调整 JPEG 压缩质量,使文件大小不超过 …

这个脚本具有以下功能:

1、处理指定文件夹中所有的 JPG/JPEG 图片

2、将图片调整为 480×640 像素的尺寸,保持原图比例并在空白处填充白色

3、设置分辨率为 300dpi,确保为 24 位真彩色

4、自动调整 JPEG 压缩质量,使文件大小不超过 40KB

5、将处理后的图片保存到与源文件夹同级的 “23 计 3 改 20250918” 文件夹中

import os
import shutil
from PIL import Image
from io import BytesIO
import tracebackdef resize_images(source_dir):"""调整指定文件夹中所有JPG图片的尺寸和参数,包含详细错误处理"""# 目标文件夹名称target_dir_name = "23计3改20250918"target_dir = os.path.join(os.path.dirname(source_dir), target_dir_name)# 创建目标文件夹if os.path.exists(target_dir):shutil.rmtree(target_dir)os.makedirs(target_dir, exist_ok=True)# 目标参数target_width = 480target_height = 640processed_count = 0skipped_count = 0for filename in os.listdir(source_dir):if filename.lower().endswith(('.jpg', '.jpeg')):try:print(f"开始处理: {filename}")img_path = os.path.join(source_dir, filename)# 步骤1: 尝试打开图片try:with Image.open(img_path) as img:# 转换为RGB模式if img.mode in ('RGBA', 'LA') or (img.mode == 'P' and 'transparency' in img.info):background = Image.new(img.mode[:-1], img.size, (255, 255, 255))background.paste(img, img.split()[-1])img_rgb = background.convert("RGB")elif img.mode != 'RGB':img_rgb = img.convert("RGB")else:img_rgb = img.copy()except Exception as e:raise Exception(f"打开图片失败: {str(e)}")# 步骤2: 调整尺寸try:img_ratio = img_rgb.width / img_rgb.heighttarget_ratio = target_width / target_heightif img_ratio > target_ratio:new_width = target_widthnew_height = int(new_width / img_ratio)else:new_height = target_heightnew_width = int(new_height * img_ratio)resized_img = img_rgb.resize((new_width, new_height), Image.Resampling.LANCZOS)# 创建目标尺寸图像final_img = Image.new('RGB', (target_width, target_height), (255, 255, 255))paste_x = (target_width - new_width) // 2paste_y = (target_height - new_height) // 2final_img.paste(resized_img, (paste_x, paste_y))except Exception as e:raise Exception(f"调整尺寸失败: {str(e)}")# 步骤3: 控制文件大小并保存try:quality = 95target_path = os.path.join(target_dir, filename)buffer = BytesIO()success = Falsewhile quality > 10:buffer.seek(0)buffer.truncate()final_img.save(buffer, 'JPEG', quality=quality, dpi=(300, 300))buffer_size = buffer.tell()  # 使用tell()获取大小,更可靠if buffer_size <= 40 * 1024:# 保存到文件with open(target_path, 'wb') as f:buffer.seek(0)f.write(buffer.read())success = Truebreakquality -= 5if not success:# 即使质量很低也要保存buffer.seek(0)buffer.truncate()final_img.save(buffer, 'JPEG', quality=10, dpi=(300, 300))with open(target_path, 'wb') as f:buffer.seek(0)f.write(buffer.read())success = Trueif success:processed_count += 1print(f"成功处理: {filename}")except Exception as e:raise Exception(f"保存图片失败: {str(e)}")except Exception as e:skipped_count += 1print(f"处理 {filename} 时出错: {str(e)}")# 打印详细的错误堆栈跟踪print("错误详情:")traceback.print_exc()else:skipped_count += 1print(f"跳过非JPG文件: {filename}")print(f"\n处理完成!")print(f"成功处理: {processed_count} 个文件")print(f"跳过: {skipped_count} 个文件")print(f"处理后的文件保存在: {target_dir}")if __name__ == "__main__":source_directory = r"C:\Users\XuZhenZhong\Desktop\23计3学测照片\23计3班学测照片20250917"if not os.path.isdir(source_directory):print(f"错误: {source_directory} 不是有效的文件夹路径")else:resize_images(source_directory)
http://www.dtcms.com/a/450676.html

相关文章:

  • 青岛市建设厅网站修复WordPress图片上传错误
  • BLDCPMSM电机控制器硬件设计工程(五)控制器电流采集方案
  • 周口市做网站微商城网站建设咨询
  • 中国建设银行网站签名通下载安装wordpress关闭feed
  • 上海市官方网站广园路建设公司网站
  • 外贸企业网站策划有什么网站是python做的
  • 佳木斯城乡建设局官方网站家装博览会2023
  • dedecms做视频网站房产网站建设整体架构
  • 代申请可信网站成都网站建设有名的公司
  • 网站开发快递文件58同城本地网页版
  • 城市分类信息网站建设网站开发与数据库
  • 企业网站建设一般要素马关县网站建设
  • 怎么做淘宝客网站备案网络软件公司
  • 商城版网站建设海外网站加速器免费
  • 公司网站制作公司排名专门做创意桌椅的网站
  • Transformer 模型简介
  • 自己做的网站能赚钱吗杭州百度百家号seo优化排名
  • 手机网站建设的规划做seo必须有自己网站吗
  • GitHub 热榜项目 - 日榜(2025-10-06)
  • 购物网站建设市场wordpress app插件下载
  • 招聘网站哪个好用茶叶网站策划书
  • 微服务项目->在线oj系统(Java-Spring)--C端用户(超详细)
  • <从零基础到精通JavaScript>1.2 变量声明 (let const)
  • 方差齐性(Homoscedasticity):概念、检验方法与处理策略
  • html个人网站制作wordpress按分类设置seo
  • 网站图片水印青海住房和城乡建设部网站
  • 网站备案了有什么好处wordpress chianz
  • 网站开发现在主要用什么语言企业网站运维
  • Windows环境下,源码启动+本地部署和启动开源项目Ragflow失败SRE模块
  • 高陵微网站建设北京seo网站结构优化