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
- Porównaj dwa pliki Excela za pomocą Python
- Porównaj wiele plików Excela w Python
- Pobierz listę zmian w Python
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:
- Prześlij pliki XLSX do chmury.
- Porównaj przesłane pliki Excela.
- 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)
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.