Jako programista języka Python możesz programowo porównywać dwa lub więcej dokumentów programu Word (.docx) pod kątem podobieństw i różnic w chmurze. Porównanie dokumentów pomaga śledzić zmiany w dokumentach programu Word. Ten artykuł skupi się na tym, jak porównać dwa lub więcej dokumentów programu Word przy użyciu interfejsu API REST w języku Python.

W tym artykule zostaną omówione następujące tematy:

Porównanie dokumentów REST API i Python SDK

GroupDocs.Comparison dla chmury

Do porównywania dokumentów Microsoft Word będę używał Python SDK of GroupDocs.Comparison Cloud API. Porównuje dwa dokumenty obsługiwanych formatów plików i znajduje różnice między nimi. W rezultacie tworzy wynikowy plik zawierający różnice i umożliwia zaakceptowanie lub odrzucenie pobranych zmian. Można go łatwo zintegrować z istniejącymi aplikacjami Python, aby umożliwić użytkownikom końcowym porównywanie dokumentów, arkuszy kalkulacyjnych, prezentacji, diagramów programu Microsoft Visio, wiadomości e-mail i plików w wielu innych formatach. Udostępnia również zestawy SDK .NET, Java, PHP i Ruby jako członkowie rodziny porównywania dokumentów dla Cloud API.

Możesz zainstalować GroupDocs.Comparison Cloud w swoim projekcie Python za pomocą pip (package installer for python), używając następującego polecenia w konsoli:

pip install groupdocs_comparison_cloud

Zanim zaczniesz postępować zgodnie z instrukcjami i dostępnymi przykładami kodu, uzyskaj swój identyfikator klienta i klucz tajny klienta z panelu nawigacyjnego. Dodaj swój identyfikator i klucz tajny w kodzie, jak pokazano poniżej:

client_id = "112f0f38-9dae-42d5-b4fc-cc84ae644972"
client_secret = "16ad3fe0bdc39c910f57d2fd48a5d618"
my_storage = ""

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

Porównaj dokumenty programu Word przy użyciu interfejsu API REST w języku Python

Możesz porównać dwa dokumenty programu Word, wykonując proste czynności wymienione poniżej:

Prześlij dokument

Przede wszystkim prześlij źródłowe i docelowe dokumenty programu Word do chmury, korzystając z przykładowego kodu podanego poniżej:

# inicjalizacja API
file_api = groupdocs_comparison_cloud.FileApi.from_config(configuration)
storage_api = groupdocs_comparison_cloud.StorageApi.from_config(configuration)

# wgraj przykładowe pliki
for filename in glob.iglob("C:\\Files\\*.docx", recursive=True):
    destFile = filename.replace("C:\\Files\\", "", 1)            
    fileExistsResponse = storage_api.object_exists(groupdocs_comparison_cloud.ObjectExistsRequest(destFile))
    if not fileExistsResponse.exists:                                
        file_api.upload_file(groupdocs_comparison_cloud.UploadFileRequest(destFile, filename))
        print("Uploaded file: "+ destFile)

W rezultacie przesłane pliki DOCX (source.docx, target.docx) będą dostępne w sekcji plików Twojego dashboardu w chmurze.

Porównaj pliki Worda w Python

Wykonaj czynności wymienione poniżej, aby programowo porównać dwa dokumenty programu Word.

  • Utwórz instancję CompareApi
  • Ustaw źródłowy plik .docx
  • Ustaw docelowy plik .docx
  • Zdefiniuj opcje porównania
  • Utwórz żądanie porównania
  • Uzyskaj wyniki, wywołując metodę CompareApi.comparisons().

Poniższy fragment kodu pokazuje, jak porównać dwa dokumenty programu Word przy użyciu interfejsu API REST.

# Utwórz niezbędne instancje interfejsu API
api_instance = groupdocs_comparison_cloud.CompareApi.from_keys(client_id, client_secret)

source = groupdocs_comparison_cloud.FileInfo()
source.file_path = "source.docx"

target = groupdocs_comparison_cloud.FileInfo()
target.file_path = "target.docx"

options = groupdocs_comparison_cloud.ComparisonOptions()
options.source_file = source
options.target_files = [target]
options.output_path = "Output/result.docx"

request = groupdocs_comparison_cloud.ComparisonsRequest(options)
response = api_instance.comparisons(request)

Możesz podać hasło do chronionych hasłem plików źródłowych lub docelowych, jak pokazano poniżej:

target.password = "5784"

Możesz także zdefiniować różne ustawienia do zastosowania podczas porównania i przypisać je do ComparisonOptions, jak pokazano poniżej:

settings = groupdocs_comparison_cloud.Settings()

# Porównaj czułość
settings.sensitivity_of_comparison = 100

# Dostosuj style do zmian
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

options.settings = settings

Pobierz wynikowy plik

Powyższy przykładowy kod zapisze różnice w nowo utworzonym pliku DOCX w chmurze. Możesz go pobrać, korzystając z następującego przykładowego kodu:

# Utwórz instancję interfejsu API
file_api = groupdocs_comparison_cloud.FileApi.from_config(configuration)

request = groupdocs_comparison_cloud.DownloadFileRequest("Output\\result.docx", my_storage)
response = file_api.download_file(request)

# Przenieś pobrany plik do katalogu roboczego
shutil.move(response, "C:\\Files\\")        
Porównaj dokumenty programu Word przy użyciu interfejsu API REST w języku Python

Wynikowy plik zawiera również stronę podsumowania na końcu dokumentu, jak pokazano poniżej:

Strona podsumowania

Porównaj wiele plików Word za pomocą Python

Wykonaj czynności wymienione poniżej, aby porównać wiele dokumentów programu Word przy użyciu języka Python.

  • Utwórz instancję CompareApi
  • Ustaw źródłowy plik .docx
  • Ustaw wiele docelowych plików .docx
  • W razie potrzeby zdefiniuj opcje porównania
  • Utwórz żądanie porównania
  • Uzyskaj wyniki, wywołując metodę CompareApi.comparisons().

Poniższy fragment kodu pokazuje, jak porównać wiele dokumentów programu Word przy użyciu języka Python. Wykonaj czynności wymienione wcześniej, aby przesłać wiele plików DOCX.

# Utwórz niezbędne instancje interfejsu API
api_instance = groupdocs_comparison_cloud.CompareApi.from_keys(client_id, client_secret)

source = groupdocs_comparison_cloud.FileInfo()
source.file_path = "source.docx"
    
target1 = groupdocs_comparison_cloud.FileInfo()
target1.file_path = "target.docx"
    
target2 = groupdocs_comparison_cloud.FileInfo()
target2.file_path = "target2.docx"
    
options = groupdocs_comparison_cloud.ComparisonOptions()
options.source_file = source
options.target_files = [target1, target2]
options.output_path = "Output/result.docx"

request = groupdocs_comparison_cloud.ComparisonsRequest(options)
response = api_instance.comparisons(request)

Wypróbuj następujące bezpłatne narzędzie online do porównywania DOCX, które zostało opracowane przy użyciu powyższego interfejsu API. https://products.groupdocs.app/comparison/docx

Wniosek

W tym artykule nauczyłeś się, jak porównywać dokumenty programu Microsoft Word w chmurze z interfejsem API REST porównywania dokumentów przy użyciu języka Python. Dowiedziałeś się również, jak programowo przesłać dwa lub więcej plików do chmury, a następnie pobrać wynikowy plik z chmury. Możesz dowiedzieć się więcej o GroupDocs.Comparison Cloud API korzystając z dokumentacji. Udostępniamy również sekcję Informacje o interfejsach API, która umożliwia wizualizację naszych interfejsów API i interakcję z nimi bezpośrednio w przeglądarce. W przypadku jakichkolwiek niejasności prosimy o kontakt na forum.