Mescle vários arquivos do Excel em um usando a API REST em Python.

Talvez seja necessário mesclar vários arquivos do Microsoft Excel em um arquivo programaticamente. Ao combinar arquivos do Excel, você pode facilmente gerar relatórios com base nos dados disponíveis em vários arquivos do Excel. Como desenvolvedor Python, você pode mesclar duas ou mais pastas de trabalho ou planilhas do Excel de diferentes arquivos em uma única pasta de trabalho. Neste artigo, você aprenderá como mesclar vários arquivos do Excel em um arquivo usando uma API REST em Python.

Os seguintes tópicos serão abordados neste artigo:

API REST de fusão do Excel e SDK do Python

Para mesclar vários arquivos XLSX, usarei a API Python SDK of GroupDocs.Merger Cloud. Ele permite combinar, dividir, remover e reorganizar uma única página ou uma coleção de páginas de formatos de documento suportados de Word, Excel, PowerPoint, Desenhos do Visio, PDF e HTML.

Você pode instalar o GroupDocs.Merger Cloud em seu aplicativo Python usando o seguinte comando no console:

pip install groupdocs-merger-cloud

Por favor, obtenha seu ID e Segredo do cliente no painel antes de seguir as etapas mencionadas. Depois de ter seu ID e segredo, adicione o código conforme mostrado abaixo:

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 = ""

Mesclar vários arquivos do Excel usando a API REST em Python

Você pode combinar dois ou mais arquivos do Excel programaticamente na nuvem seguindo as etapas mencionadas abaixo:

Carregar os arquivos do Excel

Em primeiro lugar, carregue os arquivos do Excel para a nuvem usando o exemplo de código abaixo:

# Crie uma instância das APIs
file_api = groupdocs_merger_cloud.FileApi.from_config(configuration)
storage_api = groupdocs_merger_cloud.StorageApi.from_config(configuration)

# fazer upload de arquivos de amostra
for filename in glob.iglob("C:\\Files\\upload\\*.xlsx", recursive=True):
    destFile = filename.replace("C:\\Files\\upload", "", 1)           
    # verifique se o arquivo já existe
    fileExistsResponse = storage_api.object_exists(groupdocs_merger_cloud.ObjectExistsRequest(destFile))
    if not fileExistsResponse.exists:
        # criar solicitação de upload de arquivo
        request = groupdocs_merger_cloud.UploadFileRequest(destFile, filename)
        # subir arquivo
        file_api.upload_file(request)

Como resultado, os arquivos XLSX carregados estarão disponíveis na seção de arquivos do seu painel na nuvem.

Mesclar vários arquivos do Excel usando Python

Você pode mesclar facilmente vários arquivos do Excel em um único arquivo programaticamente seguindo as etapas mencionadas abaixo:

  • Crie uma instância do DocumentApi
  • Crie o primeiro JoinItem
  • Forneça o caminho do arquivo de entrada para o primeiro JoinItem no FileInfo
  • Crie o segundo JoinItem
  • Forneça o caminho do arquivo de entrada para o segundo JoinItem no FileInfo
  • Opcionalmente, repita as etapas acima para adicionar mais arquivos
  • Crie as opções de junção
  • Adicionar lista separada por vírgulas de itens de junção criados
  • Defina o caminho do arquivo de saída
  • Crie o JoinRequest com JoinOptions
  • Chame o método join() com JoinRequest

O exemplo de código a seguir mostra como mesclar vários arquivos do Excel usando uma API REST em Python.

# Criar instância da API
documentApi = groupdocs_merger_cloud.DocumentApi.from_keys(client_id, client_secret)

# Definir o primeiro arquivo de entrada
item1 = groupdocs_merger_cloud.JoinItem()
item1.file_info = groupdocs_merger_cloud.FileInfo("sample1.xlsx")

# Definir segundo arquivo de entrada
item2 = groupdocs_merger_cloud.JoinItem()
item2.file_info = groupdocs_merger_cloud.FileInfo("sample2.xlsx")

# Definir opções de junção
options = groupdocs_merger_cloud.JoinOptions()
options.join_items = [item1, item2]
options.output_path = "joined.xlsx"

# Criar pedido de adesão
request = groupdocs_merger_cloud.JoinRequest(options)

# Junte os arquivos
result = documentApi.join(request)

# Feito
print("Documents merged: " + result.path)
Mesclar vários arquivos do Excel usando a API REST em Python

Mesclar vários arquivos do Excel usando a API REST em Python

Baixe o arquivo mesclado

O exemplo de código acima salvará o arquivo Excel mesclado na nuvem. Você pode baixá-lo usando o seguinte exemplo de código:

# inicialização da API
file_api = groupdocs_merger_cloud.FileApi.from_config(configuration)
my_storage = ""

# Criar solicitação de arquivo de download
request = groupdocs_merger_cloud.DownloadFileRequest("joined.xlsx", my_storage)
response = file_api.download_file(request)

# Mova o arquivo baixado para o seu diretório de trabalho
shutil.move(response, "C:\\Files\\")

Mesclar planilhas específicas do Excel usando Python

Você pode facilmente mesclar planilhas específicas do Excel de vários arquivos do Excel em um único arquivo programaticamente, seguindo as etapas mencionadas abaixo:

  • Crie uma instância do DocumentApi
  • Crie o primeiro JoinItem
  • Forneça o caminho do arquivo de entrada para o primeiro JoinItem no FileInfo
  • Crie o segundo JoinItem
  • Forneça o caminho do arquivo de entrada para o segundo JoinItem no FileInfo
  • Defina o número da folha inicial e o número da folha final para o segundo JoinItem
  • Opcionalmente, defina o modo de alcance
  • Crie as opções de junção
  • Adicionar lista separada por vírgulas de itens de junção criados
  • Defina o caminho do arquivo de saída
  • Crie o JoinRequest com JoinOptions
  • Obtenha resultados chamando o método join() da DocumentAPI

O trecho de código a seguir mostra como mesclar planilhas específicas do Excel de vários arquivos usando uma API REST em Python.

# Criar instância da API
documentApi = groupdocs_merger_cloud.DocumentApi.from_keys(client_id, client_secret)

# Definir o primeiro arquivo de entrada
item1 = groupdocs_merger_cloud.JoinItem()
item1.file_info = groupdocs_merger_cloud.FileInfo("sample1.xlsx")

# Definir segundo arquivo de entrada
item2 = groupdocs_merger_cloud.JoinItem()
item2.file_info = groupdocs_merger_cloud.FileInfo("sample2.xlsx")
# Definir intervalo de números de folha para mesclar
item2.start_page_number = 3
item2.end_page_number = 4
# Modo de alcance
item2.range_mode = "OddPages"

# Definir opções de junção
options = groupdocs_merger_cloud.JoinOptions()
options.join_items = [item1, item2]
options.output_path = "joined_sheets.xlsx"

# Criar pedido de adesão
request = groupdocs_merger_cloud.JoinRequest(options)

# Junte os arquivos
result = documentApi.join(request)

# Feito
print("Documents merged: " + result.path)
Mesclar planilhas específicas do Excel usando Python

Mesclar planilhas específicas do Excel usando Python

Experimente on-line

Experimente a seguinte ferramenta de mesclagem XLSX on-line gratuita, desenvolvida usando a API acima. https://products.groupdocs.app/merger/xlsx

Conclusão

Neste artigo, você aprendeu como mesclar vários arquivos do Excel na nuvem. Além disso, você viu como mesclar planilhas específicas do Excel de vários arquivos em um arquivo usando uma API REST em Python. Este artigo também explicou como carregar arquivos XLSX programaticamente para a nuvem e, em seguida, baixar o arquivo mesclado da nuvem. A API também permite que você reordene ou substitua páginas de documentos, altere a orientação da página, gerencie senhas de documentos e execute outras manipulações facilmente para qualquer formato de arquivo compatível. Você pode aprender mais sobre GroupDocs.Merge Cloud API usando a documentação. Também fornecemos uma seção Referência de API que permite visualizar e interagir com nossas APIs diretamente pelo navegador. Em caso de ambiguidade, sinta-se à vontade para nos contatar no fórum.

Veja também