使用 Python 比較 Word 文檔

在各種情況下執行 Word 文檔的比較以識別差異。各種在線工具允許您比較 Word 文檔,但是,您可能需要在您的應用程序中實現比較功能。為此,本文展示瞭如何在 Python 中比較兩個 Word 文檔。

用於比較 Word 文檔的 Python 庫

為了比較 DOCX 或 DOC 文檔,我們將使用 Aspose.Words for Python。上述庫允許您從 Python 應用程序中自動化文字處理功能。您可以使用以下 pip 命令從 PyPI 安裝庫。

pip install aspose-words

在 Python 中比較兩個 Word 文檔

Aspose.Words for Python 使您可以很容易地比較兩個 Word 文檔。在比較過程中,更改作為修訂過帳到第一個文檔中。以下是在 Python 中比較兩個 Word 文檔的步驟。

  • 首先,使用 Document 類加載第一個 Word 文檔。
  • 然後,使用 Document 類加載第二個文檔。
  • 使用第一個文檔的文檔對象調用 compare(Document, string, datetime.today()) 方法。
  • 使用 Document.revisions.count 屬性檢查文檔是否不同。
  • 最後,保存第一個文檔以獲得修訂。

下面的代碼示例顯示瞭如何比較兩個 Word 文檔。

import aspose.words as aw
from datetime import date

# 加載第一個文檔
doc = aw.Document("calibre.docx")

# 加載第二個文檔
doc2 = aw.Document("calibre2.docx")

# 比較文件
doc.compare(doc2, "user", date.today())

# 保存文檔以獲得修訂
if (doc.revisions.count > 0):
    doc.save("compared.docx")
else:
    print("Documents are equal")

下面是對比結果的截圖。

使用 Python 比較兩個 Word 文檔

比較 Word 文檔的附加選項

Aspose.Words 還提供了一些額外的選項來控製文檔比較過程。例如,您可以忽略特定類型的元素,如頁眉、頁腳、評論等。您還可以設置粒度來指定是按字符還是按單詞比較文檔。以下是設置這些選項的步驟。

  • 首先,使用 Document 類加載第一個 Word 文檔。
  • 然後,使用 Document 類加載第二個文檔。
  • 創建 CompareOptions 類的實例並設置所需的選項。
  • 使用第一個文檔的文檔對象調用 compare(Document, string, datetime.today(), CompareOptions) 方法。
  • 使用 Document.revisions.count 屬性檢查文檔是否不同。
  • 最後,保存第一個文檔以獲得修訂。

以下代碼示例顯示瞭如何在比較兩個 Word 文檔時使用其他選項。

import aspose.words as aw
from datetime import date

# 加載第一個文檔
doc = aw.Document("calibre.docx")

# 加載第二個文檔
doc2 = aw.Document("calibre2.docx")

# 設置附加選項
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

# 比較文件
doc.compare(doc2, "user", date.today(), options)

# 保存文檔以獲得修訂
if (doc.revisions.count > 0):
    doc.save("compared.docx")
else:
    print("Documents are equal")

獲取免費的 API 許可證

您可以獲得臨時許可,以便在沒有評估限制的情況下使用 Aspose.Words for Python。

結論

在本文中,您學習瞭如何在 Python 中比較兩個 Word 文檔。此外,您還看到瞭如何使用不同的選項來控製文檔比較操作。此外,您可以使用 文檔 探索 Aspose.Words for Python 的其他功能。如有任何問題,您可以通過我們的論壇 向我們提問。

也可以看看