Jämför Word-dokument med Python

Jämförelse av Word-dokument utförs i olika fall för att identifiera skillnaderna. Olika onlineverktyg låter dig jämföra Word-dokument, men du kan behöva implementera jämförelsefunktionen inifrån dina applikationer. För att uppnå det visar den här artikeln hur man jämför två Word-dokument i Python.

Python-bibliotek för att jämföra Word-dokument

För att jämföra DOCX- eller DOC-dokument kommer vi att använda Aspose.Words for Python. Nämnda bibliotek låter dig automatisera ordbehandlingsfunktioner från dina Python-applikationer. Du kan installera biblioteket från PyPI med följande pip-kommando.

pip install aspose-words

Jämför två Word-dokument i Python

Aspose.Words för Python gör det ganska enkelt för dig att jämföra två Word-dokument. I jämförelseprocessen bokförs ändringarna i det första dokumentet som revisioner. Följande är stegen för att jämföra två Word-dokument i Python.

  • Ladda först det första Word-dokumentet med Document class.
  • Ladda sedan det andra dokumentet med Document class.
  • Anrop compare(Document, string, datetime.today())-metoden med hjälp av dokumentobjektet i det första dokumentet.
  • Kontrollera om dokument är olika med egenskapen Document.revisions.count.
  • Spara slutligen det första dokumentet för att få versionerna.

Följande kodexempel visar hur man jämför två Word-dokument.

import aspose.words as aw
from datetime import date

# ladda det första dokumentet
doc = aw.Document("calibre.docx")

# ladda det andra dokumentet
doc2 = aw.Document("calibre2.docx")

# jämföra dokument
doc.compare(doc2, "user", date.today())

# spara dokumentet för att hämta ändringarna
if (doc.revisions.count > 0):
    doc.save("compared.docx")
else:
    print("Documents are equal")

Följande är en skärmdump av jämförelseresultatet.

Jämför två Word-dokument med Python

Ytterligare alternativ för att jämföra Word-dokument

Aspose.Words ger också några ytterligare alternativ för att styra dokumentjämförelseprocessen. Du kan till exempel ignorera specifika typer av element som sidhuvuden, sidfötter, kommentarer etc. Du kan också ställa in granularitet för att ange om dokumenten ska jämföras med tecken eller ord. Följande är stegen för att ställa in dessa alternativ.

  • Ladda först det första Word-dokumentet med Document class.
  • Ladda sedan det andra dokumentet med Document class.
  • Skapa en instans av CompareOptions-klassen och ställ in önskade alternativ.
  • Anrop compare(Document, string, datetime.today(), CompareOptions)-metoden med hjälp av dokumentobjektet i det första dokumentet.
  • Kontrollera om dokument är olika med egenskapen Document.revisions.count.
  • Spara slutligen det första dokumentet för att få versionerna.

Följande kodexempel visar hur du använder ytterligare alternativ när du jämför två Word-dokument.

import aspose.words as aw
from datetime import date

# ladda det första dokumentet
doc = aw.Document("calibre.docx")

# ladda det andra dokumentet
doc2 = aw.Document("calibre2.docx")

# ställ in ytterligare alternativ
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

# jämföra dokument
doc.compare(doc2, "user", date.today(), options)

# spara dokumentet för att hämta ändringarna
if (doc.revisions.count > 0):
    doc.save("compared.docx")
else:
    print("Documents are equal")

Skaffa en gratis API-licens

Du kan skaffa en tillfällig licens för att använda Aspose.Words för Python utan utvärderingsbegränsningar.

Slutsats

I den här artikeln har du lärt dig hur du jämför två Word-dokument i Python. Dessutom har du sett hur man styr dokumentjämförelsen med olika alternativ. Dessutom kan du utforska andra funktioner i Aspose.Words for Python med hjälp av dokumentationen. Om du har några frågor kan du fråga oss via vårt forum.

Se även