Neste artigo, você aprenderá como criar sua ferramenta de verificação de diferenças de PDF e comparar dois arquivos PDF em Python.

Comparar arquivos PDF em Python

Muitas vezes, você precisa comparar duas versões de um documento PDF e verificar a diferença no conteúdo. Isso pode ser necessário para identificar as modificações intencionais ou não intencionais em um documento. Como não é possível verificar o arquivo PDF palavra por palavra, estão disponíveis várias ferramentas de comparação de PDF online que permitem encontrar a diferença entre dois arquivos PDF. No entanto, se você quiser comparar arquivos PDF programaticamente a partir de seu aplicativo Python, este artigo o ajudará a fazer isso em algumas etapas fáceis.

Biblioteca Python para comparar arquivos PDF - Download gratuito

Aspose.Words for Python é uma biblioteca poderosa e fácil de usar para criar e processar documentos de texto, incluindo DOC, DOCX e PDF. A biblioteca permite comparar os documentos e acompanhar as alterações, mesmo no nível do personagem. Vamos usar esta biblioteca para comparar arquivos PDF neste artigo. Para instalar a biblioteca de PyPI, você pode usar o seguinte comando pip.

> pip install aspose-words

Etapas para comparar arquivos PDF em Python

Aspose.Words for Python fornece um poderoso mecanismo de comparação de PDF e permite que você encontre as diferenças com facilidade. A seguir estão as etapas para comparar dois arquivos PDF usando a referida biblioteca Python.

  • Carregue os dois arquivos PDF.
  • Converta os arquivos PDF para o formato Word.
  • Compare os dois documentos do Word para obter as alterações.
  • Salve o documento que contém as alterações como PDF no local desejado.

Na seção a seguir, você verá como transformar as etapas mencionadas acima em código Python e comparar dois arquivos PDF.

Compare dois arquivos PDF em Python

A seguir estão as etapas para comparar dois arquivos PDF e verificar as diferenças no Python.

  • Primeiro, carregue os dois arquivos PDF usando a classe Document.
  • Em seguida, converta os arquivos PDF para o formato Word DOCX usando o método Document.save().
  • Crie e defina as opções de comparação desejadas e compare os documentos usando o método Document.compare().
  • Por fim, salve o arquivo PDF contendo as diferenças usando o método Document.save().

O exemplo de código a seguir mostra como realizar a comparação de PDF em Python.

import aspose.words as aw
from datetime import date

# Carregar arquivos PDF
PDF1 = aw.Document("first.pdf")
PDF2 = aw.Document("second.pdf")

# Converta arquivos PDF para o formato Word
PDF1.save("first.docx", aw.SaveFormat.DOCX)
PDF2.save("second.docx", aw.SaveFormat.DOCX)

# Carregar documentos do Word convertidos 
DOC1 = aw.Document("first.docx")
DOC2 = aw.Document("second.docx")

# Definir opções de comparação
options = aw.comparing.CompareOptions()            
options.ignore_formatting = True
options.ignore_headers_and_footers = True
options.ignore_case_changes = True
options.ignore_tables = True
options.ignore_fields = True
options.ignore_comments = True
options.ignore_textboxes = True
options.ignore_footnotes = True

# DOC1 conterá alterações como revisões após comparação
DOC1.compare(DOC2, "user", date.today(), options)

if (DOC1.revisions.count > 0):
    # Salve o arquivo resultante como PDF
    DOC1.save("compared.pdf", aw.SaveFormat.PDF)
else:
    print("Documents are equal")

A captura de tela a seguir mostra a comparação de dois arquivos PDF.

Comparação de arquivos PDF em Python

Biblioteca de comparação de PDF Python - Obtenha uma licença gratuita

Você pode obter uma licença temporária gratuita para comparar arquivos PDF sem limitações de avaliação.

Conclusão

Neste artigo, você aprendeu como comparar dois arquivos PDF em Python. Além disso, você viu como ativar ou desativar diferentes opções de comparação para arquivos PDF dinamicamente. Assim, você pode criar seu aplicativo de verificação de diferenças de PDF em Python com bastante facilidade.

Explore a biblioteca de comparação de PDF do Aspose para Python

Você pode explorar a documentação da biblioteca que usamos neste artigo para explorar outros recursos úteis. Em caso de dúvidas, você pode nos perguntar através do nosso fórum.

Veja também