![Mescle vários arquivos do Excel em um usando a API REST em Python.](images/merge-multiple-excel-files-into-one-using-rest-api-in-python.jpg#center)
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
- Mesclar vários arquivos do Excel usando a API REST em Python
- Mesclar planilhas específicas do Excel usando Python
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 the Excel files to the Cloud
- mesclar Multiple Excel files using Python
- Download the merged file
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](images/Merge-Multiple-Excel-Files-using-Python-1024x666.jpg#center)
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](images/Merge-Specific-Excel-Sheets-using-Python-1024x663.jpg#center)
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.