-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcompressor.py
More file actions
33 lines (29 loc) · 1.4 KB
/
compressor.py
File metadata and controls
33 lines (29 loc) · 1.4 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
import os
# * Image compressor Pillow
from PIL import Image
# * Size formatter
from humanize import naturalsize
download_folder = "../../../../Downloads/"
# Folders for the files
pictures_folder = "../../../../Pictures/"
if __name__ == '__main__':
try:
print('Buscando imágenes...\n'+ '-'* 20)
for filename in os.listdir(download_folder):
name, extension = os.path.splitext(download_folder + filename)
if extension in ['.jpg', '.jpeg', '.png', '.JPG', '.JPEG', '.PNG']:
# Opens, moves and compresses the image
picture = Image.open(download_folder + filename)
picture.save(pictures_folder + 'compressed_' + filename, optimize=True, quality=60)
# Saves the original size
original_size = os.stat(download_folder + filename).st_size
# Removes the old picture
os.remove(download_folder + filename)
# Saves the compressed size
compressed_size = os.stat(
pictures_folder + 'compressed_' + filename).st_size
print(
f'{name}: {extension} | Tamaño reducido: {naturalsize(original_size)} a {naturalsize(compressed_size)}')
print('\nNo se encontraron mas imágenes\n')
except ValueError:
print(f'Se desconoce la extensión {extension}')