利用Python批量壓縮png方法實(shí)例(支持過(guò)濾個(gè)別文件與文件夾)
前言
本文主要給大家介紹的關(guān)于Python批量壓縮png的相關(guān)資料,分享出來(lái)供大家參考學(xué)習(xí),下面話不多說(shuō)了,來(lái)一起看看詳細(xì)的介紹:
1.需求
為什么會(huì)有這個(gè)需求?是因?yàn)橛螒虻馁Y源大多是png圖片,需要壓縮,但是有些圖片和文件夾里的圖片,美術(shù)不想壓縮,比如一些帶透明度的光圈或者游戲的主要元素。所以要過(guò)濾下。發(fā)現(xiàn)python這個(gè)語(yǔ)言比較適合用在這個(gè)場(chǎng)景。所以寫了點(diǎn)python.
2.源碼
import os,sys
import os.path
rootdir=sys.path[0]
#需要過(guò)濾的文件
notActionFile = ["choose_bg1.png"]
#需要過(guò)濾的文件夾
notActionPath = ["test"]
#需要?jiǎng)h除的文件
needDeleteFile = ["s2.png"]
def file_extension(path):
return os.path.splitext(path)[1]
for parent,dirnames,filenames in os.walk(rootdir):
for filename in filenames:
fullPath = os.path.join(parent,filename)
#刪除文件
for deleteFile in needDeleteFile:
if filename == deleteFile:
os.remove(fullPath)
isFilter = False
#過(guò)濾文件壓縮
for noActionName in notActionFile:
if noActionName == filename:
isFilter = True
#過(guò)濾文件夾壓縮
for onePath in notActionPath:
lastPath = fullPath.split('\\')[-2]
if lastPath == onePath:
isFilter = True
if file_extension(fullPath) == ".png" and isFilter == False:
#print "action"
os.system("pngquant -f --ext .png --quality 50-80 \"" + fullPath + "\"")
print fullPath
用的是pngquant來(lái)壓縮。
完整項(xiàng)目下載地址:http://xiazai.jb51.net/201707/yuanma/compressImage(jb51.net).rar
使用方法,就是復(fù)制這2個(gè)文件到需要壓縮的文件夾下面,然后執(zhí)行python main.py
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來(lái)一定的幫助,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)腳本之家的支持
相關(guān)文章
Windows上使用Python增加或刪除權(quán)限的方法
下面小編就為大家分享一篇Windows上使用Python增加或刪除權(quán)限的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-04-04
基于Keras 循環(huán)訓(xùn)練模型跑數(shù)據(jù)時(shí)內(nèi)存泄漏的解決方式
這篇文章主要介紹了基于Keras 循環(huán)訓(xùn)練模型跑數(shù)據(jù)時(shí)內(nèi)存泄漏的解決方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨想過(guò)來(lái)看看吧2020-06-06
使用python實(shí)現(xiàn)語(yǔ)音文件的特征提取方法
今天小編就為大家分享一篇使用python實(shí)現(xiàn)語(yǔ)音文件的特征提取方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-01-01
Python使用pyppeteer進(jìn)行網(wǎng)頁(yè)截圖并發(fā)送機(jī)器人實(shí)例
這篇文章主要介紹了Python使用pyppeteer進(jìn)行網(wǎng)頁(yè)截圖并發(fā)送機(jī)器人實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-04-04
python模仿網(wǎng)頁(yè)版微信發(fā)送消息功能
這篇文章主要介紹了python模仿網(wǎng)頁(yè)版微信發(fā)送消息功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-02-02
Python 實(shí)現(xiàn)自動(dòng)化Excel報(bào)表的步驟
這篇文章主要介紹了Python 實(shí)現(xiàn)自動(dòng)化Excel報(bào)表的步驟,幫助大家更好的理解和學(xué)習(xí)使用python,感興趣的朋友可以了解下2021-04-04
Python用戶推薦系統(tǒng)曼哈頓算法實(shí)現(xiàn)完整代碼
這篇文章主要介紹了Python用戶推薦系統(tǒng)曼哈頓算法實(shí)現(xiàn)完整代碼,簡(jiǎn)單介紹了曼哈頓距離的定義,然后分享了其Python實(shí)現(xiàn)代碼,具有一定借鑒價(jià)值,需要的朋友可以了解下。2017-12-12

