一、背景:
前几天在网上下载一张图,想着使用,结果发现后缀是.webp,这是什么鬼?查了下资料这么说的“WebP(发音:weppy)是一种同时提供了有损压缩与无损压缩(可逆压缩)的图片文件格式”,没看懂,我只认识jpg or png,刚开始想着wps转化下,结果:
要开会员!!!
那是万万不可的,所以想着用万能的python解决下。
二、思路:
1、读取本地以webp结尾的图片;
2、用PIL下面的Image加载并转化格式;
3、保存本地;
三、上代码直接撸
# coding:utf-8
import os
from PIL import Image
# os.listdir()方法获取文件夹名字,返回数组
file_name_list = os.listdir(os.getcwd())
#--遍历该文件夹下的所有文件
for file_name in file_name_list:
#--看是否有带.webp结尾的文件
if file_name.endswith('.webp'):
im = Image.open(file_name)
if im.mode == "RGBA":
im.load() # required for png.split()
background = Image.new("RGB", im.size, (255, 255, 255))
background.paste(im, mask=im.split()[3])
save_name = file_name.replace('webp', 'jpg')
if not os.path.exists(save_name):
print("%s -> %s"%(file_name,save_name))
im.save('{}'.format(save_name), 'JPEG')
四、看效果
转化前:
转化后:
五、使用说明
将以上代码复制并保存为.py的后缀,放置在需要转化的.webp相同目录的文件夹中,运行即可批量转化。