您当前的位置: 首页 >  Python

IT之一小佬

暂无认证

  • 0浏览

    0关注

    1192博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

python模块之image修改图片类型

IT之一小佬 发布时间:2021-04-19 13:56:46 ,浏览量:0

python模块之image修改图片类型

有时候我们需要不同格式的图片后缀格式,如:png,jpg,如果仅仅手动修改图片的后缀的话,只是表面修改了后缀格式,其实图片的原类型仍然没有变化,可以用python中的imghdr模块来进行检验图片真正的格式,参考博文:https://blog.csdn.net/weixin_44799217/article/details/113686691,所以呢,我们可以使用python中PIL模块中的Image修改我们想要的文件类型。

如:

这几张图片是png格式的图片,手动修改为.jpg格式的,通过代码来判断真伪:

示例代码:

import os
import imghdr

img_list = os.listdir('./images/')
print(img_list)
for img in img_list:
    print(img, end='的文件类型为:')
    with open(f'./images/{img}', 'rb') as f:
        print(imghdr.what(f))

运行结果:

通过程序运行结果判断,图片后缀类型是假的,接下来修改图片类型:

示例代码:

import os
import imghdr
from PIL import Image

img_list = os.listdir('./images/')
print(img_list)
#  判断图片真实格式
for img in img_list:
    print(img, end='的文件类型为:')
    with open(f'./images/{img}', 'rb') as f:
        print(imghdr.what(f))

#  修改图片格式
for img in img_list:
    im = Image.open(f'./images/{img}').convert('RGB')
    im.save(f'./images/{img[:-4]}_true.jpg', 'JPEG')

#  删除之前的图片
for pic in img_list:
    os.remove(f'./images/{pic}')

#  读取修改后的图片名称
img_list = os.listdir('./images/')
print(img_list)
#  判断图片真实格式
for img in img_list:
    print(img, end='的文件类型为:')
    with open(f'./images/{img}', 'rb') as f:
        print(imghdr.what(f))

运行结果:

关注
打赏
1665675218
查看更多评论
立即登录/注册

微信扫码登录

0.0453s