Vergleichen Sie PDF Dateien mit der REST-API in Python

PDF(Portable Document Format) ist heutzutage einer der am häufigsten verwendeten Dateitypen. Wird normalerweise zum Verteilen schreibgeschützter Dokumente unter Beibehaltung des Seitenlayouts verwendet. In verschiedenen Fällen müssen wir möglicherweise den Inhalt von zwei oder mehr PDF Dokumenten oder mehrere Versionen desselben Dokuments vergleichen. Wir können PDF Dokumente problemlos programmgesteuert vergleichen, um Ähnlichkeiten und Unterschiede zu identifizieren. In diesem Artikel erfahren Sie, wie Sie PDF Dateien mithilfe einer REST-API in Python vergleichen.

Die folgenden Themen sollen in diesem Artikel behandelt werden:

REST-API zum Vergleichen von PDF Dateien und Python SDK

Zum Vergleichen von PDF Dokumenten verwenden wir die Python SDK of GroupDocs.Comparison Cloud API. Es ermöglicht Ihnen, zwei oder mehr Dokumente der unterstützten Formate zu vergleichen und die Unterschiede zu finden. Bitte installieren Sie es mit dem folgenden Befehl in der Konsole:

pip install groupdocs_comparison_cloud

Bitte holen Sie sich Ihre Kunden-ID und Ihr Geheimnis aus dem Dashboard, bevor Sie die genannten Schritte ausführen. Sobald Sie Ihre ID und Ihr Geheimnis haben, fügen Sie den Code wie unten gezeigt ein:

# Dieses Codebeispiel zeigt, wie die Client-ID und das Geheimnis festgelegt werden.
client_id = "659fe7da-715b-4744-a0f7-cf469a392b73"
client_secret = "b377c36cfa28fa69960ebac6b6e36421"

configuration = groupdocs_comparison_cloud.Configuration(client_id, client_secret)
configuration.api_base_url = "https://api.groupdocs.cloud"
my_storage = ""

Vergleichen Sie zwei PDF Dateien mithilfe einer REST-API in Python

Wir können PDF Dokumente in der Cloud vergleichen, indem wir die folgenden einfachen Schritte befolgen:

  1. Hochladen der PDF Dateien in die Cloud
  2. PDF Dateien vergleichen
  3. Laden Sie die resultierende PDF-Datei herunter

Laden Sie die PDF Dateien hoch

Zunächst laden wir die Quell und Ziel-PDF Dateien mithilfe des folgenden Codebeispiels in die Cloud hoch:

# Dieses Codebeispiel zeigt, wie PDF Dateien in die Cloud hochgeladen werden.
# Erstellen Sie eine Instanz der API
file_api = groupdocs_comparison_cloud.FileApi.from_config(configuration)

# Beispieldateien hochladen
for filename in glob.iglob("C:\\Files\\*.pdf", recursive=True):
    destFile = filename.replace("C:\\Files\\", "", 1)            
    file_api.upload_file(groupdocs_comparison_cloud.UploadFileRequest(destFile, filename))
    print("Uploaded file: "+ destFile)

Dadurch sind die hochgeladenen Dateien im Dateienbereich des Dashboards in der Cloud verfügbar.

Vergleichen Sie PDF Dateien mit Python

Wir können zwei PDF Dokumente programmgesteuert vergleichen, indem wir die folgenden Schritte ausführen:

  • Erstellen Sie zunächst eine Instanz der CompareApi.
  • Erstellen Sie als Nächstes eine Instanz von FileInfo.
  • Legen Sie dann den Pfad der PDF-Quelldatei fest.
  • Erstellen Sie anschließend eine weitere Instanz von FileInfo.
  • Legen Sie dann den Zielpfad für die PDF-Datei fest.
  • Erstellen Sie als Nächstes eine Instanz der CompareOptions.
  • Anschließend weisen Sie Quell und Zieldateien zu.
  • Legen Sie außerdem den Pfad der Ausgabedatei fest.
  • Erstellen Sie anschließend eine Instanz des ComparesRequest mit dem CompareOptions Objekt
  • Abschließend erhalten Sie Ergebnisse, indem Sie die Methode CompareApi.comparisons() mit ComparesRequest als Argument aufrufen.

Das folgende Codebeispiel zeigt, wie zwei PDF Dateien mithilfe einer REST-API in Python verglichen werden.

# Dieses Codebeispiel zeigt, wie zwei PDF Dateien verglichen werden.
# Erstellen Sie eine Instanz der API
api_instance = groupdocs_comparison_cloud.CompareApi.from_keys(client_id, client_secret)

# Eingabequelldatei
source = groupdocs_comparison_cloud.FileInfo()
source.file_path = "source.pdf"

# Zieldatei
target = groupdocs_comparison_cloud.FileInfo()
target.file_path = "target.pdf"

# Vergleichsmöglichkeiten definieren
options = groupdocs_comparison_cloud.ComparisonOptions()
options.source_file = source
options.target_files = [target]
options.output_path = "result.pdf"

# Vergleichsanfrage erstellen
request = groupdocs_comparison_cloud.ComparisonsRequest(options)

# vergleichen
response = api_instance.comparisons(request)
Vergleichen Sie zwei PDF Dateien mithilfe einer REST-API in Python

Vergleichen Sie zwei PDF Dateien mithilfe einer REST-API in Python.

Die resultierende PDF-Datei enthält außerdem eine Zusammenfassungsseite am Ende des Dokuments, wie unten dargestellt:

Zusammenfassungsseite.

Zusammenfassungsseite mit der Gesamtzahl der gelöschten oder eingefügten Elemente.

Laden Sie die resultierende Datei herunter

Das obige Codebeispiel speichert die Unterschiede in einer neu erstellten PDF-Datei in der Cloud. Es kann mit dem folgenden Codebeispiel heruntergeladen werden:

# Dieses Codebeispiel zeigt, wie die resultierende Datei heruntergeladen wird.
# Erstellen Sie eine Instanz der API
file_api = groupdocs_comparison_cloud.FileApi.from_config(configuration)

# Erstellen Sie eine Download-Dateianfrage
request = groupdocs_comparison_cloud.DownloadFileRequest("result.pdf", my_storage)

# Download-Datei
response = file_api.download_file(request)

# Verschieben Sie die heruntergeladene Datei in Ihr Arbeitsverzeichnis
shutil.move(response, "C:\\Files\\") 

Vergleichen Sie mehrere PDF Dateien in Python

Wir können mehrere PDF Dokumente vergleichen, indem wir die folgenden Schritte ausführen:

  • Erstellen Sie zunächst eine Instanz der CompareApi.
  • Erstellen Sie als Nächstes eine Instanz von FileInfo und legen Sie den Pfad der PDF-Quelldatei fest.
  • Erstellen Sie dann eine weitere Instanz von FileInfo und legen Sie den Ziel-PDF-Dateipfad fest.
  • Wiederholen Sie anschließend den obigen Schritt, um weitere Zieldateien hinzuzufügen.
  • Erstellen Sie als Nächstes eine Instanz der CompareOptions.
  • Weisen Sie dann Quell-/Zieldateien zu und legen Sie den Pfad der Ausgabedatei fest.
  • Erstellen Sie anschließend eine Instanz des ComparesRequest mit dem CompareOptions Objekt
  • Abschließend erhalten Sie Ergebnisse, indem Sie die Methode CompareApi.comparisons() mit ComparesRequest als Argument aufrufen.

Das folgende Codebeispiel zeigt, wie Sie mehrere PDF Dateien mithilfe einer REST-API in Python vergleichen.

# Dieses Codebeispiel zeigt, wie mehrere PDF Dateien verglichen werden.
# Erstellen Sie die erforderlichen API-Instanzen
api_instance = groupdocs_comparison_cloud.CompareApi.from_keys(client_id, client_secret)

# Quell-PDF
source = groupdocs_comparison_cloud.FileInfo()
source.file_path = "source.pdf"

# Ziel-PDF 1
target1 = groupdocs_comparison_cloud.FileInfo()
target1.file_path = "target.pdf"

# Ziel-PDF 2
target2 = groupdocs_comparison_cloud.FileInfo()
target2.file_path = "target2.pdf"

# Vergleichsmöglichkeiten definieren
options = groupdocs_comparison_cloud.ComparisonOptions()
options.source_file = source
options.target_files = [target1, target2]
options.output_path = "result.pdf"

# Vergleichsanfrage erstellen und vergleichen
request = groupdocs_comparison_cloud.ComparisonsRequest(options)
response = api_instance.comparisons(request)

Vergleichsergebnisse in Python anpassen

Wir können den Stil der im Ergebnis des Vergleichsprozesses gefundenen Änderungen anpassen, indem wir die folgenden Schritte ausführen:

  • Erstellen Sie zunächst eine Instanz der CompareApi.
  • Erstellen Sie als Nächstes eine Instanz von FileInfo und legen Sie den Pfad der PDF-Quelldatei fest.
  • Erstellen Sie dann eine weitere Instanz von FileInfo und legen Sie den Ziel-PDF-Dateipfad fest.
  • Erstellen Sie als Nächstes eine Instanz der Einstellungen.
  • Legen Sie dann die Vergleichsempfindlichkeit und verschiedene Eigenschaften fest, um den Stil des Elements anzupassen.
  • Erstellen Sie als Nächstes eine Instanz der CompareOptions.
  • Weisen Sie dann Quell-/Zieldateien zu und legen Sie den Pfad der Ausgabedatei fest.
  • Erstellen Sie anschließend eine Instanz des ComparesRequest mit dem CompareOptions Objekt
  • Abschließend erhalten Sie Ergebnisse, indem Sie die Methode CompareApi.comparisons() mit ComparesRequest als Argument aufrufen.

Das folgende Codebeispiel zeigt, wie Vergleichsergebnisse mithilfe einer REST-API in Python angepasst werden.

# Dieses Codebeispiel zeigt, wie Sie die Vergleichsergebnisse anpassen.
# Erstellen Sie die erforderlichen API-Instanzen
api_instance = groupdocs_comparison_cloud.VergleichenApi.from_keys(client_id, client_secret)

# Quell-PDF
source = groupdocs_comparison_cloud.FileInfo()
source.file_path = "source.pdf"

# Ziel-PDF
target = groupdocs_comparison_cloud.FileInfo()
target.file_path = "target.pdf"

settings = groupdocs_comparison_cloud.Settings()

# Vergleichen Sie die Empfindlichkeit
settings.sensitivity_of_comparison = 100

# Passen Sie die Stile an die Änderungen an
settings.inserted_items_style = groupdocs_comparison_cloud.ItemsStyle()
settings.inserted_items_style.highlight_color = "14297642"
settings.inserted_items_style.font_color = "16711680"
settings.inserted_items_style.underline = True
settings.deleted_items_style = groupdocs_comparison_cloud.ItemsStyle()
settings.deleted_items_style.font_color = "14166746"
settings.deleted_items_style.bold = True
settings.changed_items_style = groupdocs_comparison_cloud.ItemsStyle()
settings.changed_items_style.font_color = "14320170"
settings.changed_items_style.italic = True

# Vergleichsmöglichkeiten definieren
options = groupdocs_comparison_cloud.ComparisonOptions()
options.source_file = source
options.target_files = [target]
options.output_path = "result.pdf"
options.settings = settings

# Vergleichsanfrage erstellen
request = groupdocs_comparison_cloud.ComparisonsRequest(options)

# Vergleichen
response = api_instance.comparisons(request)

Holen Sie sich eine Liste der Änderungen in Python

Wir können eine Liste aller beim Vergleich von PDF Dateien festgestellten Änderungen erhalten, indem wir die folgenden Schritte ausführen:

  • Erstellen Sie zunächst eine Instanz der CompareApi.
  • Erstellen Sie als Nächstes eine Instanz von FileInfo und legen Sie den Pfad der PDF-Quelldatei fest.
  • Erstellen Sie dann eine weitere Instanz von FileInfo und legen Sie den Ziel-PDF-Dateipfad fest.
  • Erstellen Sie als Nächstes eine Instanz der CompareOptions.
  • Weisen Sie dann Quell-/Zieldateien zu und legen Sie den Pfad der Ausgabedatei fest.
  • Erstellen Sie anschließend eine Instanz des PostChangesRequest mit dem CompareOptions Objekt
  • Abschließend erhalten Sie Ergebnisse, indem Sie die Methode CompareApi.post\changes() mit ComparesRequest als Argument aufrufen.

Das folgende Codebeispiel zeigt, wie Sie mithilfe einer REST-API in Python eine Liste der Änderungen abrufen.

# Dieses Codebeispiel zeigt, wie Sie eine Liste aller Änderungen erhalten.
# Erstellen Sie die erforderlichen API-Instanzen
api_instance = groupdocs_comparison_cloud.CompareApi.from_keys(client_id, client_secret)

# Quell-PDF
source = groupdocs_comparison_cloud.FileInfo()
source.file_path = "source.pdf"

# Ziel-PDF
target = groupdocs_comparison_cloud.FileInfo()
target.file_path = "target.pdf"

# Vergleichsmöglichkeiten definieren
options = groupdocs_comparison_cloud.ComparisonOptions()
options.source_file = source
options.target_files = [target]
options.output_path = "result.pdf"

# Erstellen Sie eine Beitragsänderungsanfrage
request = groupdocs_comparison_cloud.PostChangesRequest(options)
# Änderungen posten
response = api_instance.post_changes(request)

# Änderungen anzeigen
for change in response:
  print("Change # " + str(change.id + 1) + "- Target Text: " + str(change.target_text) + ", Text: " + str(change.text) + ", Type: " + str(change.type));
Holen Sie sich eine Liste der Änderungen in Python

Holen Sie sich eine Liste der Änderungen in Python.

Vergleichen und speichern Sie mit Passwort und Metadaten in Python

Wir können die resultierende Datei mit einem Passwort schützen und sie mit Metadaten speichern, indem wir die folgenden Schritte ausführen:

  • Erstellen Sie zunächst eine Instanz der CompareApi.
  • Erstellen Sie als Nächstes eine Instanz von FileInfo und legen Sie den Pfad der PDF-Quelldatei fest.
  • Erstellen Sie dann eine weitere Instanz von FileInfo und legen Sie den Ziel-PDF-Dateipfad fest.
  • Erstellen Sie als Nächstes eine Instanz der Einstellungen.
  • Erstellen Sie dann eine Instanz der Metadaten.
  • Legen Sie anschließend verschiedene Metadateneigenschaften fest, z. B. Autor, Firma, Last\Save\By usw.
  • Legen Sie dann Passwort und Passwort\Speichern\Optionen fest.
  • Erstellen Sie als Nächstes eine Instanz der CompareOptions.
  • Weisen Sie dann Quell-/Zieldateien zu und legen Sie den Pfad der Ausgabedatei fest.
  • Erstellen Sie anschließend eine Instanz des ComparesRequest mit dem CompareOptions Objekt
  • Abschließend erhalten Sie Ergebnisse, indem Sie die Methode CompareApi.comparisons() mit ComparesRequest als Argument aufrufen.

Das folgende Codebeispiel zeigt, wie die resultierende Datei mit einem Passwort und Metadaten mithilfe einer REST-API in Python gespeichert wird.

# Dieses Codebeispiel zeigt, wie die resultierende Datei mit einem Kennwort und Metadaten gespeichert wird.
# Erstellen Sie die erforderlichen API-Instanzen
api_instance = groupdocs_comparison_cloud.VergleichenApi.from_keys(client_id, client_secret)

# Quell-PDF
source = groupdocs_comparison_cloud.FileInfo()
source.file_path = "source.pdf"

# Ziel-PDF
target = groupdocs_comparison_cloud.FileInfo()
target.file_path = "target.pdf"

settings = groupdocs_comparison_cloud.Settings()
# Metadaten festlegen
settings.meta_data = groupdocs_comparison_cloud.Metadata()
settings.meta_data.author = "Tom"
settings.meta_data.company = "GroupDocs"
settings.meta_data.last_save_by = "Jack"

#Set password
settings.password_save_option = "User"
settings.password = "password"

# Vergleichsmöglichkeiten definieren
options = groupdocs_comparison_cloud.ComparisonOptions()
options.source_file = source
options.target_files = [target]
options.output_path = "result.pdf"
options.settings = settings

# Vergleichsanfrage erstellen
request = groupdocs_comparison_cloud.ComparisonsRequest(options)

# Vergleichen
response = api_instance.comparisons(request)

Versuchen Sie es online

Bitte probieren Sie das folgende kostenlose Online-PDF-Vergleichstool aus, das mit der oben genannten API entwickelt wurde. https://products.groupdocs.app/comparison/pdf

Abschluss

In diesem Artikel haben wir erfahren, wie man PDF Dokumente in der Cloud vergleicht. Wir haben auch gesehen, wie man mehrere PDF Dateien vergleicht, den Änderungsstil anpasst und eine Liste der Änderungen in Python erhält. In diesem Artikel wurde auch erläutert, wie Sie programmgesteuert mehrere PDF Dateien in die Cloud hochladen und die resultierende Datei dann aus der Cloud herunterladen. Außerdem können Sie mithilfe der Dokumentation mehr über die GroupDocs.Comparison Cloud API erfahren. Wir bieten auch einen Abschnitt API-Referenz an, mit dem Sie unsere APIs direkt über den Browser visualisieren und mit ihnen interagieren können. Bei Unklarheiten können Sie uns gerne im Forum kontaktieren.

Siehe auch