¿Cómo puedo cambiar permanentemente los archivos en una carpeta de JPG a JPEG usando un script?

Aquí está mi código, pero no está produciendo ningún resultado:

for file in os.listdir(path):
    if file.endswith(".JPG"):
      base = os.path.splitext(file)[0]
      os.rename(file, base + '.jpeg')
-1
user58653 10 ene. 2022 a las 19:05
Eso devolverá los nombres de ruta completos, y no necesita verificar file.endswith() usted mismo.
 – 
Barmar
10 ene. 2022 a las 19:08

2 respuestas

La mejor respuesta

Puede usar opencv para esta tarea: (Nota: en este código debe establecer '/' al final de la variable de ruta)

import os
import cv2

path = "./images/"
for file in os.listdir(path):
    if file.endswith(".jpg") or file.endswith(".JPG"):
        img = cv2.imread(path+str(file))
        cv2.imwrite(path+file[0:-4]+".jpeg", img)
        os.remove(path+file)
1
Reza Tanakizadeh 10 ene. 2022 a las 19:29
import glob
import os
path = 'imgaegs/*JPG'
for file in glob.glob(path):
    new_file = file.replace('.JPG', '.jpeg')
    os.rename(file, new_file)
0
Mazhar 10 ene. 2022 a las 19:47