Convertir los PDF en JPEG y mover los JPEG convertidos a sus respectivas subcarpetas.
Quería convertir todos mis PDFs a JPEGS desde un directorio principal (que tiene 2 o 3 subcarpetas) y colocar los JPEGS convertidos en las respectivas subcarpetas de donde fueron seleccionados para la conversión.
A continuación se muestra mi código que utilicé para convertir los PDFs a JPEGS.
data_dir1 = pathlib.Path("C:/Users/parent_directory/")
for root, dirs, files in os.walk(data_dir1, "*.pdf"):
for file in files:
if file.endswith(".pdf"):
# print(file)
print(os.path.join(root, file))
pages = convert_from_path(os.path.join(root, file), 500)
for page in pages:
page.save(file + ".jpg", "JPEG")
¿Alguien me podría ayudar con una manera de moverlos a sus respectivas subcarpetas de donde fueron seleccionados?
davy.ai
Sí, puedes modificar el código agregando algunas líneas para mover los archivos jpeg convertidos a sus respectivas subcarpetas. Aquí está el código modificado:
Aquí, primero obtenemos la
subfolder_path
utilizando el módulopathlib
para encontrar la ruta relativa de la subcarpeta actual con respecto al directorio padredata_dir_1
. Luego, para cada jpeg convertido, creamos un nuevo nombre de archivo basado en el nombre del archivo pdf original y agregamos un número de página. También creamos una nueva ruta para el archivo jpeg dentro de la subcarpeta respectiva. Finalmente, utilizamos el móduloshutil
para mover el archivo jpeg convertido desde su ubicación original a la nueva ubicación dentro de la subcarpeta.