📢 Nuovo Corso Laravel API disponibile!

Conversione Immagini in WEBP

Descrizione del Progetto

In questo progetto, realizzerai un programma Python che converte immagini nei formati PNG e JPG in formato WEBP. Il programma prenderà in ingresso un percorso contenente le immagini da convertire e un percorso per salvare le immagini convertite. Se le cartelle specificate non esistono, il programma le creerà.

Requisiti

  1. Libreria Python: Utilizzare la libreria Pillow per la manipolazione delle immagini.
  2. Percorso in Entrata: Specificare un percorso contenente le immagini PNG e JPG da convertire.
  3. Percorso in Uscita: Specificare un percorso dove salvare le immagini convertite in formato WEBP.
  4. Creazione Cartelle: Il programma deve creare le cartelle in entrata e in uscita se non esistono.
  5. Conversione Immagini: Convertire tutte le immagini PNG e JPG presenti nel percorso in entrata in formato WEBP e salvarle nel percorso in uscita mantenendo il nome originale del file.

Passaggi

  1. Installazione delle Librerie: Installare la libreria Pillow se non è già installata.
  2. Creazione del Programma:
    • Richiedere il percorso delle immagini in entrata.
    • Richiedere il percorso per le immagini convertite.
    • Verificare l’esistenza delle cartelle e crearle se non esistono.
    • Leggere le immagini PNG e JPG dal percorso in entrata.
    • Convertire le immagini in formato WEBP.
    • Salvare le immagini convertite nel percorso in uscita.
  3. Esecuzione del Programma: Testare il programma con diverse immagini e percorsi.

Esempio di Codice

import os
from PIL import Image
def create_directory_if_not_exists(directory):
if not os.path.exists(directory):
os.makedirs(directory)
def convert_images_to_webp(input_dir, output_dir):
create_directory_if_not_exists(input_dir)
create_directory_if_not_exists(output_dir)
for filename in os.listdir(input_dir):
if filename.endswith(".png") or filename.endswith(".jpg"):
img_path = os.path.join(input_dir, filename)
img = Image.open(img_path)
webp_filename = os.path.splitext(filename)[0] + ".webp"
webp_path = os.path.join(output_dir, webp_filename)
img.save(webp_path, "WEBP")
print(f"Converted {filename} to {webp_filename}")
def main():
input_dir = input("Inserisci il percorso delle immagini in entrata: ")
output_dir = input("Inserisci il percorso per le immagini convertite: ")
convert_images_to_webp(input_dir, output_dir)
if __name__ == "__main__":
main()

Istruzioni per l’Esecuzione

  1. Installazione di Pillow: Se non hai Pillow installato, installalo usando il comando:

    pip install Pillow
  2. Esecuzione del Programma:

    • Salva il codice in un file Python, ad esempio convert_images.py.
    • Esegui il programma:
      python convert_images.py
    • Segui le istruzioni per inserire i percorsi in entrata e in uscita.
  3. Verifica:

    • Assicurati che le immagini nel percorso in entrata vengano convertite correttamente in formato WEBP e salvate nel percorso in uscita.
    • Controlla che le nuove cartelle vengano create se non esistono già.