【Python】批量将文件夹以及子文件夹中的所有图片转换为webp

将指定文件夹中的所有图片批量转换为webp;
将图片格式改为“xxxxxx.png@webp”;
大家如果需要可以按照自己的需求修改;

如果只是单独转换一张,可以用【Python】将图片转换为webp

需要安装PIL库:

pip install pillow

#coding=utf-8
import sys,os
from PIL import Image

def pic_webp(path,fileName):
	im = Image.open(path).convert("RGBA")	#获取图片信息
	im.save(path+"@webp", "WEBP")			#保存并转换为webp
	print("成功转换:"+fileName)


#统计数据
OK = 0
NG = 0
NGList = []

path =sys.argv[1]						#图片集所在目录
for (dirpath,dirname,dirfile) in os.walk(path):
	for fileName in dirfile:			#遍历目录所有文件
		try:
			if fileName.split(".")[1] in ["png","jpeg","jpg","gif","webp"]:	#判断文件类型
				pic_webp(os.path.join(dirpath,fileName),fileName)			#执行转换函数
				OK = OK+1
		except IOError:
			print("文件"+fileName+"转换失败")
			NGList.append(os.path.join(dirpath,fileName))
			NG = NG+1

print("完成,"+str(OK)+"个图片转换成功\n"+str(NG)+"个图片转换失败,失败文件为"+str(NGList))

调用格式:

python main.py 图片所在目录
点赞

发表回复

电子邮件地址不会被公开。必填项已用 * 标注