Combinar archivos PDF usando la API REST en Python

Puede combinar fácilmente dos o más documentos PDF en un solo archivo PDF mediante programación en la nube. Puede ser útil para compartir o imprimir varios documentos combinados en un solo archivo en lugar de procesar todos los archivos uno por uno. Como desarrollador de Python, puede fusionar dos o más archivos PDF en un solo archivo en sus aplicaciones de Python. En este artículo, aprenderá cómo fusionar archivos PDF utilizando una API REST en Python.

En este artículo se tratarán los siguientes temas:

API REST de fusión de PDF y SDK de Python

Para fusionar dos o más archivos PDF, utilizaré la API Python SDK de GroupDocs.Merger Cloud. Le permite combinar dos o más documentos en un solo documento, o dividir un documento de origen en varios documentos resultantes. También le permite desplazar, eliminar, intercambiar, rotar o cambiar la orientación de la página, ya sea vertical u horizontal para el rango de páginas completo o preferido. El SDK admite la fusión y división de todos los formatos de documentos populares, como Word, Excel, PowerPoint, Visio, OneNote, PDF, HTML, etc.

Puede instalar GroupDocs.Merger Cloud en su aplicación Python usando el siguiente comando en la consola:

pip install groupdocs_merger_cloud

Obtenga su ID de cliente y secreto del panel de control antes de seguir los pasos mencionados. Una vez que tenga su ID y secreto, agregue el código como se muestra a continuación:

client_id = "da0c487d-c1c0-45ae-b7bf-43eaf53c5ad5"
client_secret = "479db2b01dcb93a3d4d20efb16dea971"

configuration = groupdocs_merger_cloud.Configuration(client_id, client_secret)
configuration.api_base_url = "https://api.groupdocs.cloud"
my_storage = ""

Combinar archivos PDF usando la API REST en Python

Puede combinar dos o más archivos PDF mediante programación en la nube siguiendo los sencillos pasos que se mencionan a continuación:

  1. Subir los archivos PDF a la nube
  2. Fusionar múltiples archivos PDF usando Python
  3. Descargar el archivo fusionado

Sube los archivos PDF

En primer lugar, cargue los archivos PDF en la nube usando el ejemplo de código que se muestra a continuación:

# Crear instancia de la API
file_api = groupdocs_merger_cloud.FileApi.from_config(configuration)
storage_api = groupdocs_merger_cloud.StorageApi.from_config(configuration)

# subir archivos de muestra
for filename in glob.iglob("C:\\Files\\upload\\*.pdf", recursive=True):
    destFile = filename.replace("C:\\Files\\upload", "", 1)           
    # verificar si el archivo ya existe
    fileExistsResponse = storage_api.object_exists(groupdocs_merger_cloud.ObjectExistsRequest(destFile))
    if not fileExistsResponse.exists:
        # crear solicitud de carga de archivo
        request = groupdocs_merger_cloud.UploadFileRequest(destFile, filename)
        # subir archivo
        file_api.upload_file(request)

Como resultado, los archivos PDF cargados estarán disponibles en la sección de archivos de su tablero en la nube.

Combinar múltiples archivos PDF usando Python

Puede fusionar fácilmente varios archivos PDF en un solo archivo mediante programación siguiendo los pasos que se mencionan a continuación:

  • Crear una instancia de DocumentApi
  • Crea una instancia del JoinItem
  • Proporcione la ruta del archivo de entrada para el primer JoinItem en FileInfo
  • Crear otra instancia del JoinItem
  • Proporcione la ruta del archivo de entrada para el segundo JoinItem en FileInfo
  • Agregue más JoinItems para fusionar más de dos archivos
  • Crear una instancia de JoinOptions
  • Agregar una lista separada por comas de elementos de unión creados
  • Establecer la ruta del archivo de salida
  • Cree una instancia de JoinRequest con JoinOptions
  • Obtenga resultados llamando al método join() de DocumentAPI con JoinRequest

El siguiente fragmento de código muestra cómo fusionar varios archivos PDF mediante una API REST en Python.

# inicialización de la API
documentApi = groupdocs_merger_cloud.DocumentApi.from_config(configuration)

# archivo fuente 1
item1 = groupdocs_merger_cloud.JoinItem()
item1.file_info = groupdocs_merger_cloud.FileInfo("ten-pages_1.pdf")

# archivo fuente 2
item2 = groupdocs_merger_cloud.JoinItem()
item2.file_info = groupdocs_merger_cloud.FileInfo("ten-pages_2.pdf")

# definir opciones de unión
options = groupdocs_merger_cloud.JoinOptions()
options.join_items = [item1, item2]
options.output_path = "Output/joined.pdf"

# crear solicitud de unión
request = groupdocs_merger_cloud.JoinRequest(options)

# fusionar archivos
result = documentApi.join(request)

Descargar el archivo combinado

El ejemplo de código anterior guardará el archivo PDF combinado en la nube. Puede descargarlo utilizando el siguiente ejemplo de código:

# Inicialización de la API
file_api = groupdocs_merger_cloud.FileApi.from_config(configuration)

# crear solicitud de archivo de descarga
request = groupdocs_merger_cloud.DownloadFileRequest("Output/joined.pdf", my_storage)
# descargar archivo
response = file_api.download_file(request)

# Mueva el archivo descargado a su directorio de trabajo
shutil.move(response, "C:\\Files\\")

Combinar páginas específicas de múltiples archivos PDF usando Python

Puede combinar fácilmente páginas específicas de varios archivos PDF en un solo archivo mediante programación siguiendo los pasos que se mencionan a continuación:

  • Crear una instancia de DocumentApi
  • Crea una instancia del JoinItem
  • Proporcione la ruta del archivo de entrada para el primer JoinItem en FileInfo
  • Definir una lista de números de página para fusionar
  • Crear otra instancia del JoinItem
  • Proporcione la ruta del archivo de entrada para el segundo JoinItem en FileInfo
  • Definir el número de la página de inicio y el número de la página final
  • Definir el modo de rango de páginas
  • Crear una instancia de JoinOptions
  • Agregar una lista separada por comas de elementos de unión creados
  • Establecer la ruta del archivo de salida
  • Cree una instancia de JoinRequest con JoinOptions
  • Obtenga resultados llamando al método join() de DocumentAPI con JoinRequest

El siguiente fragmento de código muestra cómo fusionar páginas específicas de varios archivos PDF mediante una API REST en Python.

# inicialización de la API
documentApi = groupdocs_merger_cloud.DocumentApi.from_config(configuration)

# archivo fuente 1
item1 = groupdocs_merger_cloud.JoinItem()
item1.file_info = groupdocs_merger_cloud.FileInfo("Output/joined.pdf")
# números de página de páginas específicas para fusionar
item1.pages = [1,2]

# archivo fuente 2
item2 = groupdocs_merger_cloud.JoinItem()
item2.file_info = groupdocs_merger_cloud.FileInfo("ten-pages.pdf")
# número de página de inicio
item2.start_page_number = 2
# número de página final
item2.end_page_number = 4
# modo de rango de página
item2.range_mode = "OddPages"

# definir opciones de unión
options = groupdocs_merger_cloud.JoinOptions()
options.join_items = [item1, item2]
options.output_path = "Output/joined-pages.pdf"

# crear solicitud de unión
request = groupdocs_merger_cloud.JoinRequest(options)

# combinar páginas
result = documentApi.join(request)

Prueba en línea

Pruebe la siguiente herramienta gratuita de fusión de PDF en línea, que se desarrolla utilizando la API anterior. https://products.groupdocs.app/merger/pdf

Conclusión

En este artículo, ha aprendido a fusionar varios archivos PDF en la nube. También aprendió cómo combinar páginas específicas de varios documentos PDF en un solo archivo usando Python. Además, ha aprendido cómo cargar archivos PDF a la nube mediante programación y luego descargar el archivo combinado de la nube. La API REST de fusión de PDF también proporciona SDK de .NET, Java, PHP, Ruby, Android y Node.js como sus miembros de la familia de fusión de documentos para la API de la nube. Puede obtener más información sobre GroupDocs.Merge Cloud API utilizando la documentación. También proporcionamos una sección Referencia de API que le permite visualizar e interactuar con nuestras API directamente a través del navegador. En caso de cualquier ambigüedad, no dude en contactarnos en el foro.

Ver también