Scal wiele plików Excela w jeden za pomocą interfejsu API REST w Python.

Może być konieczne programowe scalenie wielu plików programu Microsoft Excel w jeden plik. Łącząc razem pliki Excel, możesz łatwo generować raporty na podstawie danych dostępnych w wielu plikach Excel. Jako programista języka Python możesz scalić dwa lub więcej skoroszytów lub arkuszy kalkulacyjnych programu Excel z różnych plików w jeden skoroszyt. W tym artykule dowiesz się, jak scalić wiele plików Excela w jeden plik za pomocą REST API w Python.

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

Excel Merger REST API i Python SDK

Do łączenia wielu plików XLSX będę używał Python SDK of GroupDocs.Merger Cloud API. Pozwala łączyć, dzielić, usuwać i zmieniać kolejność pojedynczej strony lub zbioru stron z obsługiwanych formatów dokumentów Word, Excel, PowerPoint, Rysunki programu Visio, PDF i HTML.

Możesz zainstalować GroupDocs.Merger Cloud w swojej aplikacji Python za pomocą następującego polecenia w konsoli:

pip install groupdocs-merger-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:

client_id = "659fe7da-715b-4744-a0f7-cf469a392b73"
client_secret = "b377c36cfa28fa69960ebac6b6e36421"

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

Scal wiele plików Excela za pomocą interfejsu API REST w Python

Możesz programowo połączyć dwa lub więcej plików Excel w chmurze, wykonując czynności wymienione poniżej:

Prześlij pliki Excela

Najpierw prześlij pliki programu Excel do chmury, korzystając z przykładowego kodu podanego poniżej:

# Utwórz instancję interfejsów API
file_api = groupdocs_merger_cloud.FileApi.from_config(configuration)
storage_api = groupdocs_merger_cloud.StorageApi.from_config(configuration)

# wgraj przykładowe pliki
for filename in glob.iglob("C:\\Files\\upload\\*.xlsx", recursive=True):
    destFile = filename.replace("C:\\Files\\upload", "", 1)           
    # sprawdź, czy plik już istnieje
    fileExistsResponse = storage_api.object_exists(groupdocs_merger_cloud.ObjectExistsRequest(destFile))
    if not fileExistsResponse.exists:
        # utwórz prośbę o przesłanie pliku
        request = groupdocs_merger_cloud.UploadFileRequest(destFile, filename)
        # Przesyłanie pliku
        file_api.upload_file(request)

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

Połącz wiele plików Excela za pomocą Python

Możesz łatwo programowo scalić wiele plików Excela w jeden plik, wykonując czynności wymienione poniżej:

  • Utwórz instancję DocumentApi
  • Utwórz pierwszy JoinItem
  • Podaj ścieżkę pliku wejściowego dla pierwszego JoinItem w pliku FileInfo
  • Utwórz drugi JoinItem
  • Podaj ścieżkę pliku wejściowego dla drugiego elementu JoinItem w pliku FileInfo
  • Opcjonalnie powtórz powyższe kroki, aby dodać więcej plików
  • Utwórz JoinOptions
  • Dodaj oddzieloną przecinkami listę utworzonych elementów dołączania
  • Ustaw ścieżkę pliku wyjściowego
  • Utwórz JoinRequest za pomocą JoinOptions
  • Wywołaj metodę join() za pomocą JoinRequest

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

# Utwórz instancję interfejsu API
documentApi = groupdocs_merger_cloud.DocumentApi.from_keys(client_id, client_secret)

# Zdefiniuj pierwszy plik wejściowy
item1 = groupdocs_merger_cloud.JoinItem()
item1.file_info = groupdocs_merger_cloud.FileInfo("sample1.xlsx")

# Zdefiniuj drugi plik wejściowy
item2 = groupdocs_merger_cloud.JoinItem()
item2.file_info = groupdocs_merger_cloud.FileInfo("sample2.xlsx")

# Zdefiniuj opcje łączenia
options = groupdocs_merger_cloud.JoinOptions()
options.join_items = [item1, item2]
options.output_path = "joined.xlsx"

# Utwórz prośbę o dołączenie
request = groupdocs_merger_cloud.JoinRequest(options)

# Dołącz do plików
result = documentApi.join(request)

# Zrobione
print("Documents merged: " + result.path)
Scal wiele plików Excela za pomocą interfejsu API REST w Python

Scal wiele plików Excela za pomocą interfejsu API REST w Python

Pobierz scalony plik

Powyższy przykładowy kod zapisze scalony plik programu Excel w chmurze. Możesz go pobrać, korzystając z następującego przykładowego kodu:

# Inicjalizacja interfejsu API
file_api = groupdocs_merger_cloud.FileApi.from_config(configuration)
my_storage = ""

# Utwórz żądanie pobrania pliku
request = groupdocs_merger_cloud.DownloadFileRequest("joined.xlsx", my_storage)
response = file_api.download_file(request)

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

Scal określone arkusze Excela za pomocą Python

Możesz łatwo programowo scalić określone arkusze Excela z wielu plików Excela w jeden plik, wykonując czynności wymienione poniżej:

  • Utwórz instancję DocumentApi
  • Utwórz pierwszy JoinItem
  • Podaj ścieżkę pliku wejściowego dla pierwszego JoinItem w pliku FileInfo
  • Utwórz drugi JoinItem
  • Podaj ścieżkę pliku wejściowego dla drugiego elementu JoinItem w pliku FileInfo
  • Zdefiniuj numer arkusza początkowego i arkusza końcowego dla drugiego elementu JoinItem
  • Opcjonalnie zdefiniuj tryb zakresu
  • Utwórz JoinOptions
  • Dodaj oddzieloną przecinkami listę utworzonych elementów dołączania
  • Ustaw ścieżkę pliku wyjściowego
  • Utwórz JoinRequest za pomocą JoinOptions
  • Uzyskaj wyniki, wywołując metodę join() interfejsu DocumentAPI

Poniższy fragment kodu pokazuje, jak scalić określone arkusze programu Excel z wielu plików przy użyciu interfejsu API REST w języku Python.

# Utwórz instancję interfejsu API
documentApi = groupdocs_merger_cloud.DocumentApi.from_keys(client_id, client_secret)

# Zdefiniuj pierwszy plik wejściowy
item1 = groupdocs_merger_cloud.JoinItem()
item1.file_info = groupdocs_merger_cloud.FileInfo("sample1.xlsx")

# Zdefiniuj drugi plik wejściowy
item2 = groupdocs_merger_cloud.JoinItem()
item2.file_info = groupdocs_merger_cloud.FileInfo("sample2.xlsx")
# Ustaw zakres numerów arkuszy do scalenia
item2.start_page_number = 3
item2.end_page_number = 4
# Tryb zasięgu
item2.range_mode = "OddPages"

# Zdefiniuj opcje łączenia
options = groupdocs_merger_cloud.JoinOptions()
options.join_items = [item1, item2]
options.output_path = "joined_sheets.xlsx"

# Utwórz prośbę o dołączenie
request = groupdocs_merger_cloud.JoinRequest(options)

# Dołącz do plików
result = documentApi.join(request)

# Zrobione
print("Documents merged: " + result.path)
Scal określone arkusze Excela za pomocą Python

Scal określone arkusze Excela za pomocą Python

Wypróbuj online

Wypróbuj następujące bezpłatne narzędzie online do scalania plików XLSX, które zostało opracowane przy użyciu powyższego interfejsu API. https://products.groupdocs.app/merger/xlsx

Wniosek

W tym artykule nauczyłeś się łączyć wiele plików Excela w chmurze. Ponadto widziałeś, jak scalać określone arkusze Excela z wielu plików w jeden plik za pomocą interfejsu API REST w Python. W tym artykule wyjaśniono również, jak programowo przesłać pliki XLSX do chmury, a następnie pobrać scalony plik z chmury. Interfejs API umożliwia również zmianę kolejności lub zamianę stron dokumentu, zmianę orientacji strony, zarządzanie hasłami do dokumentów i łatwe wykonywanie innych operacji dla dowolnego obsługiwanego formatu pliku. Możesz dowiedzieć się więcej o GroupDocs.Merge 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.

Zobacz też