Python で Word、PDF、PowerPoint ドキュメントの差分を比較しましょう

ドキュメントの比較は、法的文書のレビューから技術文書の編集まで、さまざまな業界において重要なタスクです。異なる文書間で正確性を確保し、変更箇所を特定することは、多くの時間と労力がかかります。Word 文書の異なるバージョンを比較したり、PDF ファイルの変更点を分析したり、PowerPoint プレゼンテーションの相違点を特定したりする場合に、ドキュメントの比較は開発プロセスにおいて重要な側面となります。

この記事では、Python で Word (DOC や DOCX)、PDF、PowerPoint (PPT や PPTX) を比較する方法について探ってみます。


ドキュメントを比較できる Python 向けの API

Aspose は、Microsoft Office などの外部のソフトウェアに依存することなく、さまざまなファイル形式を操作できるドキュメント処理 API に特化した製品です。この製品の API により、幅広い形式のファイルを生成、編集、変換、レンダリングできます。Microsoft Office の Word、Excel、PowerPoint、および PDF などの一般的なドキュメント形式だけでなく、画像、アーカイブ (ZIP)、さらに CAD 形式のいくつかもサポートしています。製品に含まれるこれらの API が提供する重要な機能のひとつに挙げられるドキュメント比較機能により、2 つのドキュメントの差分をすばやく特定することができます。

それでは、Python アプリケーションで Word、PDF、PowerPoint ドキュメントを比較する方法について見ていきましょう。


Python で PDF ドキュメントを比較してみましょう

PDF ドキュメントは、その複雑なファイル形式のために比較が困難な場合があります。
Aspose.Words for Python は、効率的に PDF ドキュメントを比較できる強固なドキュメント処理 API です。プログラムからドキュメントを簡単に操作することができます。

Python で 2 つの PDF ファイルを比較する手順はこちらになります。

  1. Aspose.Words for Python via .NET をインストールします。
  2. 比較する 2 つの PDF ドキュメントを Document クラスで読み込みます。
  3. PDF ファイルを編集可能な Word 形式に変換します。
  4. 必要に応じて、比較方法のオプションを CompareOptions クラスで指定します。
  5. Word 形式に変換したファイルを読み込んで、Document.compare() メソッドで比較します。
  6. 最後に、比較結果の PDF を Document.save() メソッドで保存します。

下記は、Python で PDF ドキュメントを比較するサンプル コードです。

# This code example demonstrates how to compare two PDF files in Python
import aspose.words as aw
from datetime import date

# Load PDF files
PDF1 = aw.Document("Document.pdf")
PDF2 = aw.Document("Document2.pdf")

# Convert PDF files to Word format
PDF1.save("first.docx", aw.SaveFormat.DOCX)
PDF2.save("second.docx", aw.SaveFormat.DOCX)

# Load converted Word documents 
DOC1 = aw.Document("first.docx")
DOC2 = aw.Document("second.docx")

# Set comparison options
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 will contain changes as revisions after comparison
DOC1.compare(DOC2, "user", date.today(), options)

if (DOC1.revisions.count > 0):
    # Save resultant file as PDF
    DOC1.save("compared.pdf", aw.SaveFormat.PDF)
else:
    print("Documents are equal")

document-comparison-in-python_compare_pdf.py hosted with ❤ by GitHub

Aspose.Words for Python に関する説明は、下記のリソースをご確認ください。


Python で Word 文書を比較してみましょう

Word 文書を比較する際も、最初に紹介した Aspose.Words for Python を使用します。
同じように Python で 2 つの Word ドキュメントを比較する手順を見てみましょう。

  1. Aspose.Words for Python via .NET をインストールします。
  2. 比較する 2 つの Word 文書を Document クラスで読み込みます。
  3. Document.compare() メソッドで文書を比較します。
  4. 最後に、比較結果の文書を Document.save() メソッドで保存します。

下記は、Python で Word 文書を比較するサンプル コードです。

# This code example demonstrates how to compare two Word files in Python
import aspose.words as aw
from datetime import date

# load first document
doc = aw.Document("Document.docx")

# load second document
doc2 = aw.Document("Document2.docx")

# compare documents
doc.compare(doc2, "user", date.today())

# save the document to get the revisions
if (doc.revisions.count > 0):
    doc.save("Compared_Document.docx")
else:
    print("Documents are equal")

document-comparison-in-python_compare_docx.py hosted with ❤ by GitHub


Python で PowerPoint プレゼンテーションを比較してみましょう

PowerPoint プレゼンテーションのスライドを比較する場合は、Aspose.Slides for Python を使用します。Aspose.Slides for Python は、Python 環境で PowerPoint のプレゼンテーションを操作できる強力なライブラリです。Python で 2 つの PowerPoint プレゼンテーションのスライドを比較する手順を見てみましょう。

  1. Aspose.Slides for Python via .NET をインストールします。
  2. 比較元と比較先の PPT ファイルを Presentation クラスで読み込みます。
  3. 比較元の PPT ファイルに含まれるスライドをループ処理で参照します。
  4. 比較先の PPT ファイルに含まれるスライドを入れ子のループ処理で参照します。
  5. それぞれのスライドが同じかどうかをチェックします。

下記は、Python で PowerPoint の PPT ファイルを比較するサンプル コードです。

# This code example demonstrates how to compare two PowerPoint presentation slides in Python
import aspose.slides as slides

with slides.Presentation("AccessSlides.pptx") as p1:
    with slides.Presentation("HelloWorld.pptx") as p2:
        for i in range(len(p1.masters)):
            for j in range(len(p2.masters)):
                if p1.masters[i] == p2.masters[j]:
                    print("Presentation1 MasterSlide#{0} is equal to Presentation2 MasterSlide#{1}".format(i,j))
                else:
                    print("Presentation1 MasterSlide#{0} is not equal to Presentation2 MasterSlide#{1}".format(i,j))

document-comparison-in-python_compare_slides.py hosted with ❤ by GitHub

Aspose.Slides for Python に関する説明は、下記のリソースをご確認ください。


このように、Aspose は、Word、PDF、PPT ドキュメントを効率的に比較できる強力なドキュメント処理 API を提供しています。これらのライブラリの機能を活用することで、文書比較プロセスを効率化し、作業の正確性と一貫性を確保できます。この記事では、Python を使用して Word、PDF、PPT 形式のドキュメントを比較する完全なプロセスを紹介しました。製品で提供される各種リソースのガイドラインに沿って、文書比較機能を Python アプリケーションに簡単に統合することができます。

Aspose 製品では、無償体験版のダウンロードが用意されています。
機能制限のない 30 日間無償の評価ライセンスもありますので、お気軽にお問い合わせください。

Aspose for Python via .NET 製品の紹介 Web サイトはこちら

以上です。


© Aspose Pty Ltd 2001-2024.
Compare Word, PDF, and PPT Documents in Python

タイトルとURLをコピーしました