最近疫情反复,堂姐被抽调到宣传部门发些稿件,发布平台要求图片必须是jpg格式,堂姐是个电脑盲,刚好最近在看入门Python的文章,写个转换图片格式的程序给她,她只要把程序放到有图片的文件夹里运行就好了。我在这里记录分享下制作过程。

(转换图片这种我去逛了一圈大家都是套壳ImageMagick来做的呀,我也给她套一个)

先安装ImageMagick,官网:

ImageMagickhttps://imagemagick.org/index.php打开PyCharm或者VScode,写下如下代码:

(大概思路就是通过文件后缀把图片文件过滤出来,然后用ImageMagick的命令去转换它,新建个《转换后图片》文件夹,把转换完文件放到这个文件夹里,基本上是巨傻瓜简易的做法。)

import os
import subprocessdirectory = '.'
dist_path = os.path.join(directory, '转换后图片')
if not os.path.exists(dist_path):os.makedirs(dist_path)
infile = os.getcwd()
outfile = os.path.join(infile, '转换后图片')
for filename in os.listdir(directory):if filename.lower().endswith(('.bmp', '.dib', '.gif', '.png','.jpeg', '.pbm', '.pgm', '.ppm', '.tif', '.tiff', '.heic')):print('Converting %s...' % os.path.join(directory, filename))if '.' in filename:suffix = filename.split('.')[-1]name = filename.replace(('.' + suffix), '')subprocess.run(["magick", "%s" % filename, "%s" % (outfile + '\\' + name + '.jpg')])continue

源代码运行测试没问题,下面就是打包成可执行的程序,堂姐主要用windows系统办公,那么打包成exe可执行程序就可以了。

打包方式有多种,这里我选择pyinstaller

用pip装它(你电脑没有pip?进它官网下载去吧您訥:)

pip · PyPIThe PyPA recommended tool for installing Python packages.https://pypi.org/project/pip/装完您就打开cmd程序,运行

pip install pyinstaller

装完您看它结尾处显示Successfully,那就是装上了;

然后您去网上找个您喜欢的ico格式的图片文件,放到py文件所在的目录,就可以开始打包了。

打开cmd,切换到py项目所在目录,运行如下命令(这里“ico.ico”是我找的图标文件,图片转换为jpg.py是我的python文件)

pyinstaller -F -i ico.ico 图片转换为jpg.py

然后您就得到一个带着您选择图标的exe文件,把它放到您想批量压缩图片的文件夹里,双击就可以了。

不愿意搭建环境,只需要可执行程序的看这里:

图片转换为jpg.exe

当然,您就算下了这个exe文件还是需要下载那个ImageMagick才能用。

Python套壳ImageMagick实现图片格式批量转换相关推荐

  1. php图片转换软件,能能图片格式转换器 支持主流图片格式批量转换,简单实用的图片转换软件...

    今天给大家分享一个我平常用的能能图片格式转换器,这个能能图片格式转换器也是非常强大,集合所有图片格式,支持相互转换哦,能能图片格式转换器还有图片剪切,调整分辨率,添加水印等功能.在这里也推荐大家看一下 ...

  2. MATLAB对图片格式批量转换

    从网上下载一些数据集,发现是PPM或者PGM格式的,一般照片查看器打不开.可以用MATLAB对其进行批量转换格式.当然,任何两种格式之间相互转换都可以用这个程序: % 本示例程序将 pgm 图片转换为 ...

  3. 图片格式批量转换,批量处理

    转载:http://blog.sina.com.cn/s/blog_ba532aea0101bty5.html 你当然可以用 PhotoShop 或 GIMP 这样的软件来处理图像.没人禁止你这么做, ...

  4. ubuntu 图片格式批量转换,批量处理

    可以用 PhotoShop 或 GIMP 这样的软件来处理图像.没人禁止你这么做,就像没人禁止你用大炮打蚊子一样.不过依我看,打蚊子最好还是用电蚊拍,而要处理大量图像的话,我推荐 ImageMagic ...

  5. 【kimol君的无聊小发明】—用python写图片格式批量处理工具

    [kimol君的无聊小发明]-用python写图片格式批量处理工具 前言 一.思路分析 二.调整尺寸 三.调整大小 四.整合代码 写在最后 前言 某个夜深人静的夜晚,夜微凉风微扬,月光照进我的书房~ ...

  6. Python写图片格式批量处理工具!你还一张一张转格式吗?

    前言 某个夜深人静的夜晚,夜微凉风微扬,月光照进我的书房~ 当我打开文件夹以回顾往事之余,惊现许多看似杂乱的无聊代码.我拍腿正坐,一个想法油然而生:"生活已然很无聊,不如再无聊些叭" ...

  7. 通过PIL模块批量对图片格式进行转换(如jpg转png)

    通过PIL模块批量对图片格式进行转换(如jpg转png) python的pil模块相当的智能,如果你需要对图片格式进行转换,比如jpg转换成tif.jpg转换成gif.png转换成jpg.只需要在保存 ...

  8. python图片保存jpg、show变成bmp_Python 实现判断图片格式并转换,将转换的图像存到生成的文件夹中...

    Python 实现判断图片格式并转换,将转换的图像存到生成的文件夹中 我就废话不多说了,直接上代码吧! import Image from datetime import datetime impor ...

  9. Python用imghdr模块识别图片格式

    Python用imghdr模块识别图片格式 imghdr.what(img_file) img_end = {'jpg', 'bmp', 'png', 'jpeg', 'rgb', 'tif', 't ...

最新文章

  1. 文件上传(JavaWeb 狂神笔记)
  2. 教务查询子系统时序图
  3. 为什么软件开发,人多,事少,还会工作量大?
  4. 25个经典的Spring面试问答
  5. 正则表达式,解决要么有要有没有,但必须开头
  6. 又是Dropout两次!这次它做到了有监督任务的SOTA
  7. 工业以太网交换机故障的排障步骤
  8. WCF标准绑定以及传输协议与编码格式
  9. Java Integer.compareTo()比较大小
  10. 【转】学习理论,注重细节
  11. javascript对table的添加,删除行的操作
  12. 兼容各浏览器的js回车事件
  13. 根据车辆型号自动生成车辆编号
  14. C++实现简单钢琴(文件读取 - 播放曲谱)
  15. 运放全波整流电路_万能整流电路:运放+整流二极管
  16. 德意志帝国(第一帝国)(962年-1806年)
  17. linux系统下载18.04,在Ubuntu 18.04系统中下载安装Persepolis Download Manager
  18. Unity碰撞检测/触发器触发问题
  19. HTML5+CSS3小实例:酷炫的菱形加载动画
  20. 【DEVOPS】基于禅道 - 重构研发协作流程

热门文章

  1. KILE无法软件仿真
  2. 简历准备(一)—— TPLink
  3. 下列关于java包装类叙述错误的是,java包装类
  4. python中len函数_len()函数以及Python中的示例
  5. vc++之windows api
  6. 服务器的类型都有哪些
  7. 打造类手机刷机的win10 recovery镜像
  8. Error -27796: Failed to connect to server ip地址: [10060] Connection timed out
  9. 连接真机开发安卓(Android)移动app MUI框架——混合式开发(一) (敲详细)
  10. 银联支付更换正式环境后报错存在风险而关闭了订单