Cómo combinar múltiples documentos de Word en uno y seguir formateando

Cómo combinar múltiples documentos de Word usando Python

Combine dos o más documentos de Word en un solo archivo de Word mediante programación en la nube usando la API REST. Nuestra API de fusión de docx en línea proporciona una solución conveniente para combinar y fusionar varios documentos de Word en un solo documento de Word en línea en lugar de procesar los archivos uno por uno. Como desarrollador de Python, puede fusionar dos documentos de Word en línea en un solo documento de Word. En este artículo, aprenderá cómo combinar varios documentos de Word usando Python.

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

API REST de fusión de documentos de Word: SDK de Python

Para fusionar archivos de texto en línea, utilizaré la API Python SDK de GroupDocs.Merger Cloud. Admite combinar dos o más archivos en un documento de una sola palabra o extraer páginas de un documento de un solo documento. La combinación de palabras en línea también le permite mover, eliminar, intercambiar, rotar o cambiar la orientación de las páginas, ya sea como vertical u horizontal para el rango de páginas completo o preferido. Este SDK admite la fusión y división de todos los formatos de documentos populares como Word, Excel, PowerPoint, Visio, OneNote, PDF, HTML, etc.

Instale GroupDocs.Merger Python SDK para fusionar archivos docx en línea usando el siguiente comando:

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:

# Importe el SDK de Python en su aplicación de Python desde http://api.groupdocs.cloud
import groupdocs_merger_cloud

# Obtenga client_id y client_secret de https://dashboard.groupdocs.cloud después del registro gratuito.
client_id = "xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
client_secret = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

# Obtener configuraciones de la API de archivos 
configuration = groupdocs_merger_cloud.Configuration(client_id, client_secret)
configuration.api_base_url = "https://api.groupdocs.cloud"
storage_name = "MyStorage"

Cómo combinar archivos de Word en Python usando la API REST

Para fusionar documentos de Word en línea en la nube, seguiremos los sencillos pasos que se mencionan a continuación:

  1. Subir los archivos de word a la nube
  2. Fusionar archivos docx usando Python
  3. Descargar el archivo docx de Word fusionado

Sube los archivos de Word

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

# Cargue un documento de Word en el almacenamiento en la nube
# 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("H:\\groupdocs-cloud-data\\upload\\*.docx", recursive=True):
    destFile = filename.replace("H:\\groupdocs-cloud-data\\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 a la nube
        response = file_api.upload_file(request)
        print(response.uploaded)

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

Combinar varios archivos de Word usando Python

Combine archivos de Word en línea 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
  • Finalmente, combine archivos llamando al método join() de DocumentAPI con JoinRequest

El siguiente fragmento de código muestra cómo combinar documentos de Word en uno en línea usando Python:

# Cómo fusionar archivos Word Docx en Python 
# Crear las instancias de API necesarias
documentApi = groupdocs_merger_cloud.DocumentApi.from_config(configuration)

# Archivo fuente de entrada 1
item1 = groupdocs_merger_cloud.JoinItem()
item1.file_info = groupdocs_merger_cloud.FileInfo("python-testing/word-one.docx")

# Archivo fuente de entrada 2
item2 = groupdocs_merger_cloud.JoinItem()
item2.file_info = groupdocs_merger_cloud.FileInfo("python-testing/word-two.docx")

# Definir opciones de unión
options = groupdocs_merger_cloud.JoinOptions()
options.join_items = [item1, item2]
options.output_path = "python-testing/joined-files.docx"

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

# Combinar archivos docx
result = documentApi.join(request)
print("Successfully merged Word Docx files: " + str(result))

Descargar el archivo combinado

Ahora ya sabe cómo combinar documentos de Word y seguir formateándolos con python. Puede descargarlo utilizando el siguiente ejemplo de código:

# Inicialización de la API para descargar el archivo convertido
import shutil
file_api = groupdocs_merger_cloud.FileApi.from_config(configuration)

# Crear solicitud de archivo de descarga
request = groupdocs_merger_cloud.DownloadFileRequest("python-testing\\joined-files.docx", storage_name)

# Descargar archivo convertido
response = file_api.download_file(request)

# Mueva el archivo descargado a su directorio
shutil.move(response, "H:\\groupdocs-cloud-data\\")

Combinar páginas específicas de varios archivos de Word en Python

A continuación, combine páginas específicas de varios archivos de Word en un solo documento 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
  • Defina una lista de números de página en una matriz separada por comas
  • 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 como OddPages
  • 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
  • Finalmente, combine archivos de Word llamando al método join() de DocumentAPI con JoinRequest

El siguiente fragmento de código muestra cómo fusionar páginas específicas de archivos de Word en una usando la API REST en Python:

# Cómo fusionar páginas específicas de múltiples archivos docx en Python
# Crear e inicializar instancias de API
documentApi = groupdocs_merger_cloud.DocumentApi.from_config(configuration)

# Archivo fuente de entrada 1
item1 = groupdocs_merger_cloud.JoinItem()
item1.file_info = groupdocs_merger_cloud.FileInfo("python-testing/word-one.docx")
# números de página de páginas específicas para fusionar
item1.pages = [1,2]

# Archivo fuente de entrada 2
item2 = groupdocs_merger_cloud.JoinItem()
item2.file_info = groupdocs_merger_cloud.FileInfo("python-testing/word-two.docx")
# número de página de inicio
item2.start_page_number = 2
# número de página final
item2.end_page_number = 4
# Modo rango de páginas
item2.range_mode = "OddPages"

# Definir opciones de unión
options = groupdocs_merger_cloud.JoinOptions()
options.join_items = [item1, item2]
options.output_path = "python-testing/joined-pages.docx"

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

# Combinar archivos docx
result = documentApi.join(request)
print("Successfully merged Word pages: " + str(result))

Combinar documentos de Word gratis en línea

¿Cómo combinar documentos de Word en línea gratis? Intente lo siguiente para combinar documentos en línea de forma gratuita, que se desarrolla utilizando la API anterior.

Conclusión

En este tutorial, hemos aprendido:

  • cómo combinar documentos de Word en línea en la nube usando python;
  • cómo cargar y descargar mediante programación el archivo de documentos combinados;
  • unir páginas de múltiples documentos de Word en línea en un solo archivo en Python;

Además, puede obtener más información sobre GroupDocs.Merger Cloud API utilizando la documentación. También proporcionamos una sección Referencia de API que le permite visualizar y comunicarse con nuestras API directamente a través del navegador. Además, consulte GroupDocs.Merger Cloud SDK for Python Ejemplos aquí.

Hacer una pregunta

Si tiene alguna pregunta sobre la fusión de documentos de Word, no dude en consultarnos en el Foro de soporte gratuito.

Ver también