PYTHON轻松转.webp成.png格式(图片)

2020-07-03  本文已影响0人  双笙_

在日常下载网页图片经常会碰到webp格式的图片,下载下来没办法直接用,如果想要png要怎么办呢?

接下来不bb, 直接上代码:解释很详细

import os
from PIL import Image

# 返回当前工作目录
CURRENT_PATH = os.getcwd()

# 转换格式
IMG_EXP = ".png"

# 获取最高所有文件
cur_all_files = os.listdir(CURRENT_PATH)
# 转换列表
imgList = []


# 遍历文件夹,储存webp格式的路径到列表内
def findFileForImage(filePath):
    child_all_files = os.listdir(filePath)
    for child_file_name in child_all_files:
        sPath = os.path.join(filePath, child_file_name)
        if os.path.isdir(sPath):
            findFileForImage(sPath)
        n, e = os.path.splitext(child_file_name)
        if e.lower() == ".webp":
            imgList.append(os.path.join(filePath, n))


# 检索目录下所有的webp文件,如果是文件夹则继续向下检索
for file_name in cur_all_files:
    nPath = os.path.join(CURRENT_PATH, file_name)
    # 文件夹
    if os.path.isdir(nPath):
        findFileForImage(nPath)
        continue
    # 储存
    name, ext = os.path.splitext(file_name)
    if ext.lower() == ".webp":
        imgList.append(os.path.join(CURRENT_PATH, name))


# 转换图片
def convertImage():
    for webpPath in imgList:
        print(webpPath)

        # 打开图片并赋值一份新的图片
        img = Image.open(webpPath + ".webp")
        img.load()
        # 将赋值的图片修改后缀保存在原路径
        img.save(webpPath + IMG_EXP)
        # 删除原webp图
        os.remove(webpPath + ".webp")


# 执行
convertImage()

使用条件:

如果不想敲命令可以使用下面方式

1.新建文本
2.复制下面内容进去
3.保存,修改后缀名为 .bat


image.png

双击这个文件就ok了,前提 py文件必须和这个文件在同个目录下


@echo off
 
 
rem %0         代指批处理文件自身
rem %~d0       是指批处理所在的盘符
rem %~dp0      是盘符加路径
 
rem cd %~dp0   就是进入批处理所在目录了
 
echo local_cap  
C:  
cd %~dp0
start python xxx.py  (xxx换成你py文件名,这个括号要记得删除了)
rem 使用ping命令暂停3s,这样可以看到调用python后的结果
::ping -n 10 127.0.0.1 > nul

参考文档:
链接:https://blog.csdn.net/Mr_Sun88/java/article/details/106303440

上一篇下一篇

猜你喜欢

热点阅读