Visão Geral
Unir documentos do Word é uma necessidade comum em muitas aplicações, seja para combinar relatórios, consolidar informações, ou simplesmente simplificar a gestão de documentos. Neste artigo, exploraremos como unir arquivos DOCX usando Python com a biblioteca GroupDocs.Merger. Esta poderosa biblioteca permite que os desenvolvedores manipulem documentos do Word programaticamente, garantindo ao mesmo tempo alto desempenho e precisão.
Este guia cobrirá:
- Como unir vários arquivos DOCX
- Como unir documentos sem quebras de seção
- Como unir com modos de conformidade pré-definidos
- Manipulando fluxos de documentos em Python
Como unir vários arquivos DOCX
Unir vários arquivos DOCX é simples com a biblioteca GroupDocs.Merger. Abaixo, descrevemos os principais passos envolvidos neste processo:
- Importar o pacote GroupDocs.Merger: Comece importando a biblioteca necessária.
- Criar uma instância do Merger: Instancie a classe Merger usando o caminho do primeiro arquivo DOCX.
- Juntar documentos adicionais: Use o método joinpara adicionar outros arquivos DOCX que deseja unir.
- Salvar o documento unido: Por fim, chame o método savepara escrever o documento unido em um caminho de saída especificado.
Aqui está um fragmento de código Python demonstrando esses passos:
import groupdocs.merger as gm
import constants
def run():
    print(f"----------------------------------------------------------------------------")
    print(f"[Exemplo de Uso Básico] # OperaçõesMúltiplosDocumentos # Unir : Docx")
    # Passo 1: Criar um objeto Merger com o primeiro documento
    with gm.Merger(constants.sample_docx) as merger:
        print(f"Informações do documento recuperadas com sucesso")
        
        # Passo 2: Juntar outro arquivo DOCX para unir
        merger.join(constants.sample_docx)
        
        # Passo 3: Salvar o documento unido
        merger.save(constants.output_docx)
        print(f"Unir para: {constants.output_docx}")
    
    print(f"----------------------------------------------------------------------------")
Unir documentos DOCX sem quebras de seção
Às vezes, unir documentos exige que o conteúdo seja unido sem inserir quebras de seção. Isso pode ajudar a manter o fluxo de informações nos documentos unidos.
- Criar uma instância do Merger: Assim como antes, inicialize a classe Merger.
- Definir opções de união: Defina WordJoinOptionse defina omodeparaDISABLE_SECTION_BREAKS.
- Juntar documentos: Adicione o documento adicional para unir.
- Salvar o resultado: Escreva a saída final em um novo arquivo DOCX.
Veja como você pode fazer isso:
import groupdocs.merger as gm
import constants
def run():
    print(f"----------------------------------------------------------------------------")
    print(f"[Exemplo de Uso Básico] # OperaçõesMúltiplosDocumentos # Unir # Word : UnirDocumentosWordSemQuebrasDeSeção")
    # Passo 1: Criar um objeto Merger com o documento de origem
    with gm.Merger(constants.sample_doc) as merger:
        print(f"Informações do documento recuperadas com sucesso")
        
        # Passo 2: Definir opções de união Word para desativar quebras de seção
        word_join_options = gm.domain.options.WordJoinOptions()
        word_join_options.mode = gm.domain.options.WordJoinMode.DISABLE_SECTION_BREAKS
        
        # Passo 3: Juntar o documento sem quebras de seção
        merger.join(constants.sample_doc, word_join_options)
        
        # Passo 4: Salvar o documento unido
        merger.save(constants.output_doc_without_section_breaks)
        print(f"Unir para: {constants.output_doc_without_section_breaks}")
    
    print(f"----------------------------------------------------------------------------")
Unir documentos DOCX com modos de conformidade pré-definidos
Para casos de uso específicos, pode ser necessário que os documentos cumpram certos padrões. O GroupDocs.Merger permite unir documentos com modos de conformidade pré-definidos para garantir, por exemplo, que a saída atenda aos padrões ISO.
- Criar uma instância do Merger: Inicialize a classe Merger com seu documento base.
- Definir modo de conformidade: Crie um objeto WordJoinOptionse defina a propriedadecompliance.
- Juntar documentos: Adicione o documento adicional usando o método de união.
- Salvar o documento final: Salve-o no local desejado.
Aqui está o código para esta operação:
import groupdocs.merger as gm
import constants
def run():
    print(f"----------------------------------------------------------------------------")
    print(f"[Exemplo de Uso Básico] # OperaçõesMúltiplosDocumentos # Unir # Word : UnirDocumentosWordComModoDeConformidadePréDefinido")
    # Passo 1: Criar um objeto Merger com o documento
    with gm.Merger(constants.sample_docx) as merger:
        print(f"Informações do documento recuperadas com sucesso")
        
        # Passo 2: Definir opções de união Word com modo de conformidade pré-definido
        word_join_options = gm.domain.options.WordJoinOptions()
        word_join_options.compliance = gm.domain.options.WordJoinCompliance.ISO_29500_2008_STRICT
        
        # Passo 3: Juntar outro documento com modo de conformidade
        merger.join(constants.sample_docx, word_join_options)
        
        # Passo 4: Salvar o documento unido
        merger.save(constants.output_docx_with_predefined_compliance_mode)
        print(f"Unir para: {constants.output_docx_with_predefined_compliance_mode}")
    
    print(f"----------------------------------------------------------------------------")
Como unir DOCX de fluxos
Você também pode unir arquivos DOCX a partir de fluxos de memória, o que pode ser útil quando você está lidando com documentos gerados dinamicamente.
- Obter um fluxo de arquivo: Abra seu documento em modo binário para obter o fluxo.
- Criar a instância do Merger: Instancie a classe Mergerusando o fluxo.
- Executar a operação de união: Una conforme necessário e salve a saída.
Veja como você implementaria isso:
from turtle import update
import groupdocs.merger as gm
import constants
def run():
    print(f"----------------------------------------------------------------------------")
    print(f"[Exemplo de Uso Avançado] # Carregando # CarregarDocumentoDeFluxo")
    # Passo 1: Obter o fluxo do documento
    stream = get_file_stream()
    
    # Passo 2: Criar uma instância do Merger usando o fluxo
    with gm.Merger(stream) as merger:
        print(f"Documento carregado do fluxo com sucesso")
    
    print(f"----------------------------------------------------------------------------")
def get_file_stream():
    file_path = constants.sample_docx
    return open(file_path, "rb")
Consulte também
Para mais detalhes, você pode explorar os seguintes recursos:
- Documentação do GroupDocs.Merger para Python
- Referência da API para GroupDocs.Merger
- Exemplos do GitHub do GroupDocs.Merger
Você também pode baixar uma versão experimental gratuita em releases.groupdocs.com e adquirir uma licença temporária para experimentar a biblioteca sem restrições em Comprar Licença Temporária.
Exemplos de Código
Aqui estão alguns exemplos adicionais para ajudá-lo a entender o processo de união com a biblioteca GroupDocs.Merger para Python:
Unir Documentos Word Sem Começar de Uma Nova Página
Este exemplo demonstra como unir documentos para que a última página do primeiro documento seja seguida diretamente pela primeira página do próximo documento, sem que nenhuma nova página seja inserida entre eles.
import groupdocs.merger as gm
import constants
def run():
    print(f"----------------------------------------------------------------------------")
    print(f"[Exemplo de Uso Básico] # OperaçõesMúltiplosDocumentos # Unir # Word : UnirDocumentosWordSemComeçarDeUmaNovaPágina")
    # Passo 1: Criar um objeto Merger com o documento
    with gm.Merger(constants.sample_doc) as merger:
        print(f"Informações do documento recuperadas com sucesso")
        
        # Passo 2: Definir opções de união Word para modo contínuo
        word_join_options = gm.domain.options.WordJoinOptions()
        word_join_options.mode = gm.domain.options.WordJoinMode.CONTINUOUS
        
        # Passo 3: Juntar documentos sem inserir nova página
        merger.join(constants.sample_doc, word_join_options)
        
        # Passo 4: Salvar o documento unido
        merger.save(constants.output_doc_without_starting_from_new_page)
        print(f"Unir para: {constants.output_doc_without_starting_from_new_page}")
    
    print(f"----------------------------------------------------------------------------")
Unir Vários Documentos com Opções de União Personalizadas
Veja como unir documentos DOCX enquanto define opções de união específicas, como conformidade com um padrão ISO específico.
import groupdocs.merger as gm
import constants
def run():
    print(f"----------------------------------------------------------------------------")
    print(f"[Exemplo de Uso Avançado] # Unir com Opções de União Personalizadas")
    # Passo 1: Criar um objeto Merger com o documento base
    with gm.Merger(constants.sample_docx) as merger:
        print(f"Informações do documento recuperadas com sucesso")
        
        # Passo 2: Definir opções de união personalizadas para modo de conformidade pré-definido
        word_join_options = gm.domain.options.WordJoinOptions()
        word_join_options.compliance = gm.domain.options.WordJoinCompliance.ISO_29500_2008_STRICT
        
        # Passo 3: Juntar outro documento com configurações de conformidade
        merger.join(constants.sample_docx, word_join_options)
        
        # Passo 4: Salvar o documento unido
        merger.save(constants.output_docx_with_predefined_compliance_mode)
        print(f"Unir para: {constants.output_docx_with_predefined_compliance_mode}")
    
    print(f"----------------------------------------------------------------------------")
Consulte também
Para explorar mais sobre o GroupDocs.Merger e suas funcionalidades, você pode conferir os seguintes recursos:
- Documentação do GroupDocs.Merger para Python
- Referência da API para GroupDocs.Merger
- Exemplos de Código no GitHub para GroupDocs.Merger
- Página de Releases do GroupDocs.Merger
Avaliação Gratuita e Licença Temporária
Você pode baixar uma avaliação gratuita do GroupDocs.Merger em nossa página de releases. Além disso, você pode adquirir uma licença temporária para fins de avaliação em Comprar Licença Temporária. Esta licença temporária permite que você experimente a biblioteca sem limitações e avalie completamente suas capacidades.