广告
返回顶部
首页 > 资讯 > 后端开发 > Python >python怎么实现图片批量压缩
  • 823
分享到

python怎么实现图片批量压缩

2023-06-14 19:06:28 823人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

这篇文章主要介绍python怎么实现图片批量压缩,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!Python的数据类型有哪些?python的数据类型:1. 数字类型,包括int(整型)、long(长整型)和float(

这篇文章主要介绍python怎么实现图片批量压缩,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

Python的数据类型有哪些?

python的数据类型:1. 数字类型,包括int(整型)、long(长整型)和float(浮点型)。2.字符串,分别是str类型和unicode类型。3.布尔型,Python布尔类型也是用于逻辑运算,有两个值:True(真)和False(假)。4.列表,列表是Python中使用最频繁的数据类型,集合中可以放任何数据类型。5. 元组,元组用”()”标识,内部元素用逗号隔开。6. 字典,字典是一种键值对的集合。7. 集合,集合是一个无序的、不重复的数据组合。

项目中大量用到图片加载,由于图片太大,加载速度很慢,因此需要对文件进行统一压缩

第一种

 一:安装包

python -m pip install Pillow

二:导入包

from PIL import Imageimport os

三:获取图片文件的大小

def get_size(file):    # 获取文件大小:KB    size = os.path.getsize(file)    return size / 1024

四:输出文件夹下的文件

dir_path = r'file_path'items = os.listdir(dir_path)for item in items:    # print(item)    path = os.path.join(dir_path, item)    print(item)

五:压缩文件到指定大小,我期望的是150KB,step和quality可以修改到最合适的数值

def compress_image(infile, outfile=None, mb=150, step=10, quality=80):    """不改变图片尺寸压缩到指定大小    :param infile: 压缩源文件    :param outfile: 压缩文件保存地址    :param mb: 压缩目标,KB    :param step: 每次调整的压缩比率    :param quality: 初始压缩比率    :return: 压缩文件地址,压缩文件大小    """    if outfile is None:        outfile = infile    o_size = get_size(infile)    if o_size <= mb:        im = Image.open(infile)        im.save(outfile)    while o_size > mb:        im = Image.open(infile)        im.save(outfile, quality=quality)        if quality - step < 0:            break        quality -= step        o_size = get_size(outfile)

六:修改图片尺寸,如果同时有修改尺寸和大小的需要,可以先修改尺寸,再压缩大小

def resize_image(infile, outfile='', x_s=800):    """修改图片尺寸    :param infile: 图片源文件    :param outfile: 重设尺寸文件保存地址    :param x_s: 设置的宽度    :return:    """    im = Image.open(infile)    x, y = im.size    y_s = int(y * x_s / x)    out = im.resize((x_s, y_s), Image.ANTIALIAS)    out.save(outfile)

七:运行程序

if __name__ == '__main__':                      # 源路径      # 压缩后路径    compress_image(r"file_path", r"E:\docs\2.JPG")                    # 源路径      # 压缩后路径    resize_image(r"file_path", r"E:\docs\3.JPG")

第二种

import osfrom PIL import Imageimport threading,timedef imgToProgressive(path):    if not path.split('.')[-1:][0] in ['png','jpg','jpeg']:  #if path isn't a image file,return        return    if os.path.isdir(path):        return##########transfORM img to progressive    img = Image.open(path)    destination = path.split('.')[:-1][0]+'_destination.'+path.split('.')[-1:][0]    try:        print(path.split('\\')[-1:][0],'开始转换图片')        img.save(destination, "JPEG", quality=80, optimize=True, progressive=True) #转换就是直接另存为        print(path.split('\\')[-1:][0],'转换完毕')    except IOError:        PIL.ImageFile.MAXBLOCK = img.size[0] * img.size[1]        img.save(destination, "JPEG", quality=80, optimize=True, progressive=True)        print(path.split('\\')[-1:][0],'转换完毕')    print('开始重命名文件')    os.remove(path)    os.rename(destination,path)for d,_,fl in os.walk(os.getcwd()):    #遍历目录下所有文件    for f in fl:        try:            imgToProgressive(d+'\\'+f)        except:            pass

以上是“python怎么实现图片批量压缩”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程网Python频道!

--结束END--

本文标题: python怎么实现图片批量压缩

本文链接: https://www.lsjlt.com/news/274564.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • python怎么实现图片批量压缩
    这篇文章主要介绍python怎么实现图片批量压缩,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!python的数据类型有哪些python的数据类型:1. 数字类型,包括int(整型)、long(长整型)和float(浮...
    99+
    2023-06-14
  • python实现图片批量压缩
    目录第一种 一:安装包二:导入包三:获取图片文件的大小四:输出文件夹下的文件五:压缩文件到指定大小,我期望的是150KB,step和quality可以修改到最合适的数值六:...
    99+
    2022-11-12
  • python 批量压缩图片的脚本
    目录简介需要 Needs用法 Usage代码实现效果另外一种图片压缩实现方式简介 用Python批量压缩图片,把文件夹或图片直接拖入即可 需要 Needs Python 3 Pillow (用pip install ...
    99+
    2022-06-02
    python 图片压缩 python 批量压缩
  • python利用Guetzli批量压缩图片
    Google 又开源了,这次开源了一款图像算法工具 Guetzli。Guetzli,在瑞士德语中是“cookie(曲奇)”的意思,是一个针对数码图像和网页图像的 JPEG 编码器,能够通过产生更小的 JPE...
    99+
    2022-06-04
    批量 图片 python
  • Python简易图片批量压缩程序
    说明 运行环境:Win10 Pycharm 程序没有用到面向对象编程方法,只是简单的面向过程设计 用到的模块:PIL、os、sys 使用方法: 在Pycharm的terminal中输入”python xxx.py source...
    99+
    2023-01-31
    批量 简易 程序
  • 怎么使用python对图片进行批量压缩
    本篇内容主要讲解“怎么使用python对图片进行批量压缩”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用python对图片进行批量压缩”吧!使用Python和Pillow模块压缩图片Pil...
    99+
    2023-07-02
  • Ubuntu如何批量压缩图片
    小编给大家分享一下Ubuntu如何批量压缩图片,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!以下就是Ubuntu压缩图片批量方法,这些Ubuntu压缩图片方法是我学了很久的心得,希望对大家有帮助。用DC拍出来的很多照片尺寸...
    99+
    2023-06-16
  • Java图片批量压缩像素的实现方法
    目录图片压缩大法压缩前大小:压缩后大小:具体代码实现:附:利用Graphics类如何进行压缩图像总结图片压缩大法 为了防止用户流量的丢失,即使在5g 即将来临的情况下,压缩算法依旧是...
    99+
    2022-11-12
  • python批量压缩图片的脚本代码分享
    本篇文章和大家了解一下python批量压缩图片的脚本代码分享。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。简介用Python批量压缩图片,把文件夹或图片直接拖入即可需要 NeedsPython 3Pillow (用pip...
    99+
    2023-06-15
  • Java图片批量压缩像素的实现方法是什么
    Java图片批量压缩像素的实现方法是什么,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。图片压缩大法为了防止用户流量的丢失,即使在5g 即将来临的情况下,压缩算法...
    99+
    2023-06-22
  • 图片批量压缩大小脚本分享
    压缩图片时用的一个脚本,先安装下#ImageMagick# #!/bin/bash # yum install ImageMagick # cd /img/dir for file in */*.jpg;...
    99+
    2022-06-04
    批量 脚本 大小
  • Linux系统下怎么批量压缩图片尺寸大小
    本篇内容介绍了“Linux系统下怎么批量压缩图片尺寸大小”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Centos系统的安装使用方法: yu...
    99+
    2023-06-13
  • 如何使用python对图片进行批量压缩详解
    目录前言使用Python和Pillow模块压缩图片1、优化flag2、渐进式JPEG3、JPEG动态质量使用Python和Selenium模块操纵Squoosh批量压缩图片Pytho...
    99+
    2022-11-11
  • Python怎么批量解压和压缩文件夹
    这篇文章主要介绍“Python怎么批量解压和压缩文件夹”,在日常操作中,相信很多人在Python怎么批量解压和压缩文件夹问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Python怎么批量解压和压缩文件夹”的疑...
    99+
    2023-06-29
  • java 实现图片像素质量压缩与图片长宽缩放
    目录java 图片像素质量压缩与图片长宽缩放java 修改图片dpi(像素/大小)java 图片像素质量压缩与图片长宽缩放 今天找到的这个方法比以前项目用到的方法更好,这里记录下,方...
    99+
    2022-11-12
  • 如何编写图片批量压缩大小脚本
    本篇内容主要讲解“如何编写图片批量压缩大小脚本”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何编写图片批量压缩大小脚本”吧!压缩图片时用的一个脚本,先安装下#ImageMagick#代码如下:...
    99+
    2023-06-09
  • C#怎么实现无损压缩图片
    今天小编给大家分享一下C#怎么实现无损压缩图片的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一般在web应用中,对客户端提交...
    99+
    2023-06-30
  • python批量压缩图像的完整步骤
    目录背景解决方案操作步骤要求步骤附:批量将图片的大小设置为指定大小写在后面背景 今天在工作中,同事遇到一个上传图片的问题:系统要求的图片大小不能超过512KB。但是同事又有很多照片。...
    99+
    2022-11-12
  • 如何使用Python实现图片压缩
    小编给大家分享一下如何使用Python实现图片压缩,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1、引言我们先来看一下,自拍照原图。图片大小是 53KB接下来,就...
    99+
    2023-06-26
  • 基于Python实现批量缩放图片(视频)尺寸
    目录方法一方法二方法三方法四(FFmpeg)方法一 在 Pillow 中,resize() 方法会强制将图片缩放到指定的大小,可能会导致图片变形或失真;而 thumbnail() 方...
    99+
    2023-03-24
    Python缩放图片尺寸 Python缩放视频尺寸 Python缩放尺寸
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作