Listando e redimencionando imagens em massa com Python
Neste post eu vou apresentar como criar um script extramente simples e eficiente para redimencionar imagens em massa utilizando a biblioteca Pillow.
- Instalando a biblioteca
O primeiro passo para avançar com este tutorial é instalar a biblioteca Pillow em sua máquina. Para isto vamos utilizar o pip package manager. Abra o terminal e execute o seguinte comando abaixo:
pip3 install Pillow
Codificando
O script é bem simples e vamos comentar em cima dos pontos que precisamos configurar nas variaveis do script.
imagePath:
configura o caminho da pasta com as imagens que iremos redimencionar.
imageResizedDir:
diretório onde será salvo as imagens redimencionadas
mimeType:
Formato dos arquivos que iremos listar dentro do diretório. Em nosso exemplo todos os arquivos JPG.
imageResizeWidthTo:
Tamanho da largura da imagem que iremos redimencionar. No exemplo 400 pixels
imageResizeHeightTo:
Tamanho da altura da imagem que iremos redimencionar. No exemplo 400 pixels
import glob
from PIL import Image
imagePath = './Photos'
imageResizedDir = './Resized'
mimeType = '*.jpg'
imageResizeWidthTo = 400
imageResizeHeightTo = 400
searchFiles = imagePath+"/"+mimeType
dir_path = r''+searchFiles+''
for file in glob.glob(dir_path, recursive=True):
imageFilename = file
i = imageFilename.split('/')[2]
image = Image.open(file)
originaImageSize = (f"{image.size}")
print(imageFilename + "; " + originaImageSize)
image.thumbnail((imageResizeWidthTo, imageResizeHeightTo))
image.save(imageResizedDir+"/"+i)
- Testando o script em redimencionando imagens em massa
Para testarmos o script é muito simples. Depois de configurado as variaveis do script vamos abrir o terminal e executar o script utilizando o Python 3, seguindo o exemplo abaixo:
python3 ./dynamicImageResize.py
Repositório do script com o exemplo
Você pode baixar este script no repositório do Github no endereço:
https://github.com/jaccon/pythonListResizeImages
Se o script foi útil pra você por favor avalie no Github