Porównaj pliki Excela za pomocą REST API w Python.

Porównuj dane w plikach Excel przy użyciu interfejsu API REST w języku Python

Excel jest jednym z najpopularniejszych i najczęściej używanych arkuszy kalkulacyjnych. Pozwala organizować, analizować, obliczać i przechowywać dane w formie tabelarycznej. Bardzo częstym wymogiem jest porównywanie danych plików xlsx z dwóch różnych plików programu Excel lub wielu wersji tego samego pliku. Możemy łatwo porównać dwa arkusze kalkulacyjne lub więcej plików Excela, aby śledzić zmiany i podkreślać różnice w nowym pliku. W tym artykule dowiemy się, jak porównywać pliki Excela za pomocą REST API w Python.

Poniższe tematy zostaną omówione w celu porównania arkusza kalkulacyjnego w tym artykule:

REST API i Python SDK do porównywania plików Excel

Do porównania dwóch lub więcej plików XLSX użyjemy Python SDK of GroupDocs.Comparison Cloud API. Umożliwia porównanie dwóch lub więcej dokumentów obsługiwanych formatów i podkreśla różnice w pliku wynikowym. Zainstaluj go za pomocą następującego polecenia w konsoli:

pip install groupdocs-comparison-cloud

Proszę uzyskaj swój identyfikator klienta i klucz tajny z pulpitu nawigacyjnego przed wykonaniem wspomnianych kroków. Po uzyskaniu identyfikatora i tajnego kodu dodaj kod, jak pokazano poniżej:

# Ten przykład kodu pokazuje, jak dodać identyfikator klienta i klucz tajny w kodzie.
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 = ""

Porównaj dwa pliki Excela za pomocą Python

Możemy porównać dwa pliki Excela w Python w chmurze, wykonując proste kroki podane poniżej:

  1. Prześlij pliki XLSX do chmury.
  2. Porównaj przesłane pliki Excela.
  3. Pobierz wynikowy plik.

Prześlij pliki Excela

Najpierw prześlemy źródłowe i docelowe pliki XLSX do chmury, korzystając z następującego przykładowego kodu:

# Ten przykład kodu demonstruje, jak przekazać wiele plików programu Excel do chmury.
# Utwórz instancję interfejsu API
file_api = groupdocs_comparison_cloud.FileApi.from_config(configuration)

# Prześlij przykładowe pliki
for filename in glob.iglob("C:\\Files\\comparison\\upload\\*.xlsx", recursive=True):
    destFile = filename.replace("C:\\Files\\comparison\\upload\\", "",1)           
    file_api.upload_file(groupdocs_comparison_cloud.UploadFileRequest(destFile, filename))
    print("Uploaded file: "+ destFile)

W rezultacie przesłane pliki Excela będą dostępne w sekcji plików pulpitu nawigacyjnego w chmurze.

Porównaj pliki Excela pod kątem różnic w Python

Teraz porównamy programowo przesłane pliki Excel, wykonując czynności podane poniżej:

  • Najpierw utwórz instancję CompareApi.
  • Następnie ustaw przesłane ścieżki źródłowego i docelowego pliku wejściowego XLSX.
  • Następnie zainicjuj obiekt ComparisonOptions i przypisz pliki źródłowe i docelowe.
  • Następnie ustaw ścieżkę pliku wyjściowego.
  • Następnie utwórz ComparisonsRequest z ComparisonOptions jako argumentem.
  • Na koniec porównaj dokumenty Excela i uzyskaj wyniki za pomocą metody comparisons().

Poniższy przykładowy kod pokazuje, jak porównywać arkusze programu Excel online przy użyciu interfejsu API REST w języku Python.

# Ten przykład kodu pokazuje, jak porównać dwa pliki programu Excel.
# Utwórz niezbędne instancje interfejsu API
api_instance = groupdocs_comparison_cloud.CompareApi.from_keys(client_id, client_secret)

# Wprowadź plik źródłowy
source = groupdocs_comparison_cloud.FileInfo()
source.file_path = "source.xlsx"

# Wprowadź plik docelowy
target = groupdocs_comparison_cloud.FileInfo()
target.file_path = "target.xlsx"

# Zdefiniuj opcje porównania
options = groupdocs_comparison_cloud.ComparisonOptions()
options.source_file = source
options.target_files = [target]
options.output_path = "result.xlsx"

# Utwórz prośbę o porównanie
request = groupdocs_comparison_cloud.ComparisonsRequest(options)

# porównywać
response = api_instance.comparisons(request)
Jak porównywać dane w programie Excel i porównywać wiele plików programu Excel

Źródłowe i docelowe pliki programu Excel.

Porównaj 2 pliki programu Excel przy użyciu interfejsu API REST w języku Python.

Excel porównuje dwa arkusze w Python przy użyciu interfejsu API REST.

Pobierz wynikowy plik

W rezultacie powyższy przykładowy kod zapisze nowo utworzony plik Excel z porównaniem arkusza kalkulacyjnego w chmurze. Można go pobrać, korzystając z następującego przykładowego kodu:

# Ten przykład kodu demonstruje, jak pobrać plik programu Excel z chmury.
# Utwórz instancję interfejsu API
file_api = groupdocs_comparison_cloud.FileApi.from_config(configuration)

# Pobierz prośbę o plik
request = groupdocs_comparison_cloud.DownloadFileRequest("result.xlsx", "")

# Pobieranie pliku
response = file_api.download_file(request)

# Przenieś pobrany plik do katalogu roboczego
shutil.move(response, "C:\\Files\\comparison\\")  

Porównaj wiele plików Excela w Python

Możemy również porównać arkusze programu Excel pod kątem różnic, wykonując czynności podane poniżej:

  • Najpierw utwórz instancję CompareApi.
  • Następnie ustaw ścieżkę źródłowego pliku XLSX źródła wejściowego.
  • Następnie ustaw wiele docelowych ścieżek plików XLSX.
  • Następnie zainicjuj obiekt ComparisonOptions i przypisz pliki źródłowe i docelowe.
  • Następnie ustaw ścieżkę pliku wyjściowego.
  • Następnie utwórz ComparisonsRequest z ComparisonOptions jako argumentem.
  • Na koniec porównaj arkusz programu Excel online i uzyskaj wyniki za pomocą metody comparisons().

Poniższy przykładowy kod pokazuje, jak porównać wiele plików programu Excel przy użyciu interfejsu API REST w języku Python.

# Ten przykład kodu pokazuje, jak porównać wiele plików programu Excel.
# Utwórz niezbędne instancje interfejsu API
api_instance = groupdocs_comparison_cloud.PorównywaćApi.from_keys(client_id, client_secret)

# Wprowadź plik źródłowy
source = groupdocs_comparison_cloud.FileInfo()
source.file_path = "source.xlsx"

# Wprowadź plik docelowy 1
target1 = groupdocs_comparison_cloud.FileInfo()
target1.file_path = "target.xlsx"

# Wprowadź plik docelowy 2
target2 = groupdocs_comparison_cloud.FileInfo()
target2.file_path = "target2.xlsx"

# Zdefiniuj opcje porównania
options = groupdocs_comparison_cloud.ComparisonOptions()
options.source_file = source
options.target_files = [target1, target2]
options.output_path = "result_multiple.xlsx"

# Prośba o porównanie
request = groupdocs_comparison_cloud.ComparisonsRequest(options)

# Porównywać
response = api_instance.comparisons(request)

Pobierz listę zmian w Python

Możemy uzyskać listę wszystkich zmian i porównać dane w arkuszach Excel znalezionych podczas porównywania plików Excel, wykonując poniższe czynności:

  • Najpierw utwórz instancję CompareApi.
  • Następnie ustaw ścieżkę źródłowego pliku XLSX źródła wejściowego.
  • Następnie ustaw docelową ścieżkę pliku XLSX.
  • Następnie zainicjuj obiekt ComparisonOptions.
  • Następnie przypisz pliki źródłowe/docelowe i ustaw ścieżkę do pliku wyjściowego.
  • Następnie utwórz obiekt PostChangesRequest z ComparisonOptions jako argument.
  • Na koniec uzyskaj wyniki, wywołując metodę postChanges().

Poniższy przykładowy kod pokazuje, jak porównać dane w dwóch arkuszach programu Excel w celu dopasowania przy użyciu interfejsu API REST w języku Python.

# Ten przykład kodu demonstruje, jak uzyskać listę zmian znalezionych podczas porównania.
# Utwórz niezbędne instancje interfejsu API
api_instance = groupdocs_comparison_cloud.CompareApi.from_keys(client_id, client_secret)

# Wprowadź plik źródłowy
source = groupdocs_comparison_cloud.FileInfo()
source.file_path = "source.xlsx"

# Wprowadź plik docelowy
target = groupdocs_comparison_cloud.FileInfo()
target.file_path = "target.xlsx"

# Zdefiniuj opcje porównania
options = groupdocs_comparison_cloud.ComparisonOptions()
options.source_file = source
options.target_files = [target]

# Utwórz prośbę o zmiany postów
request = groupdocs_comparison_cloud.PostChangesRequest(options)

# zmiany postów
response = api_instance.post_changes(request)

# Pokazywać
for change in response:
  print("Change # " + str(change.id + 1) + "- Target Text: " + str(change.target_text) + ", Text: " + str(change.text) + ", Type: " + str(change.type));

Wypróbuj online

Jak porównać dane z dwóch arkuszy Excela? Wypróbuj następujące bezpłatne narzędzie online do porównywania plików XLSX, aby porównać dwa arkusze programu Excel pod kątem pasujących danych. To narzędzie do porównywania programu Excel porównuje 2 arkusze programu Excel online i jest rozwijane przy użyciu powyższego interfejsu API.

Wniosek

W tym artykule dowiedzieliśmy się, jak:

  • porównaj dwa arkusze Excela i zaznacz różnice w Python;
  • uzyskać listę wstawionych i usuniętych elementów;
  • programowo przesłać więcej niż jeden plik XLSX do chmury;
  • pobierz plik XLSX z chmury.

Poza tym 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 dotyczących sposobu porównywania arkuszy kalkulacyjnych programu Excel, prosimy o kontakt na forum.

Zobacz też