Edite a planilha do Excel usando a API REST em Python.

O Excel é um dos aplicativos de planilhas mais populares e amplamente utilizados. Ele nos permite organizar, analisar e armazenar dados em forma de tabela. Podemos facilmente adicionar, editar ou excluir o conteúdo de arquivos do Excel usando Python. Neste artigo, aprenderemos como editar uma planilha do Excel usando uma API REST em Python.

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

API REST do editor de planilhas do Excel e SDK do Python

Para modificar os arquivos XLSX, usaremos a API Python SDK of GroupDocs.Editor Cloud. Permite editar documentos dos formatos suportados. Instale-o usando o seguinte comando no console:

pip install groupdocs_editor_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:

# Este exemplo de código demonstra como adicionar seu ID de cliente e segredo no código.
client_id = "659fe7da-715b-4744-a0f7-cf469a392b73"
client_secret = "b377c36cfa28fa69960ebac6b6e36421"
my_storage = ""

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

Editar arquivo do Excel usando uma API REST em Python

Podemos editar arquivos do Excel seguindo as etapas simples abaixo:

  1. Carregar o arquivo XLSX para a nuvem
  2. Editar Dados da planilha do Excel
  3. Downloado arquivo atualizado

Carregue o Documento

Em primeiro lugar, faremos o upload do arquivo XLSX para a nuvem usando o exemplo de código abaixo:

# Este exemplo de código demonstra como carregar um arquivo do Excel na nuvem.
# Criar instância da API
file_api = groupdocs_editor_cloud.FileApi.from_config(configuration)

# carregar arquivo de amostra
request = groupdocs_editor_cloud.UploadFileRequest("sample.xlsx", "C:\\Files\\\Editor\\sample.xlsx", my_storage)
response = file_api.upload_file(request)

Como resultado, o arquivo XLSX carregado estará disponível na seção de arquivos do painel na nuvem.

Editar dados da planilha do Excel em Python

Podemos editar o conteúdo de uma planilha do Excel seguindo as etapas abaixo:

  • Em primeiro lugar, crie instâncias de FileApi e EditApi.
  • Em seguida, forneça o caminho do arquivo XLSX carregado.
  • Em seguida, baixe o arquivo como um documento HTML.
  • Em seguida, leia o arquivo HTML baixado como uma string.
  • Em seguida, edite o HTML e salve o documento HTML atualizado.
  • Depois disso, carregue o arquivo HTML atualizado.
  • Finalmente, salve o HTML de volta para XLSX usando o método EditApi.save().

O exemplo de código a seguir mostra como editar dados de planilha do Excel usando uma API REST em Python.

# Este exemplo de código demonstra como editar o conteúdo de uma planilha do Excel.
# inicialização da API
editApi = groupdocs_editor_cloud.EditApi.from_keys(client_id, client_secret)
fileApi = groupdocs_editor_cloud.FileApi.from_keys(client_id, client_secret)

# Carregue o documento carregado em estado editável
fileInfo = groupdocs_editor_cloud.FileInfo("sample.xlsx")

# Definir opções de carregamento da planilha
loadOptions = groupdocs_editor_cloud.SpreadsheetLoadOptions()
loadOptions.file_info = fileInfo

# Forneça o caminho da pasta de saída 
loadOptions.output_path = "output"
# Forneça o índice da planilha para editar
loadOptions.worksheet_index = 0
# Carregar a folha
loadResult = editApi.load(groupdocs_editor_cloud.LoadRequest(loadOptions))        

# Baixar documento html
htmlFile = fileApi.download_file(groupdocs_editor_cloud.DownloadFileRequest(loadResult.html_path))
html = ""       

with open(htmlFile, 'r') as file:
    html = file.read()

# Edite alguma coisa...    
html = html.replace("Welcome", "This is a sample sheet!")

# Carregar html de volta ao armazenamento
with open(htmlFile, 'w') as file:
    file.write(html)

fileApi.upload_file(groupdocs_editor_cloud.UploadFileRequest(loadResult.html_path, htmlFile))

# Salvar html de volta para xlsx
saveOptions = groupdocs_editor_cloud.SpreadsheetSaveOptions()
saveOptions.file_info = fileInfo
saveOptions.output_path = "edited.xlsx"
saveOptions.html_path = loadResult.html_path
saveOptions.resources_path = loadResult.resources_path
saveResult = editApi.save(groupdocs_editor_cloud.SaveRequest(saveOptions))

# Feito
print("Document edited: " + saveResult.path)
Edite o arquivo do Excel usando uma API REST em Python.

Edite o arquivo do Excel usando uma API REST em Python.

Baixe o arquivo atualizado

O exemplo de código acima salvará o arquivo Excel editado (XLSX) na nuvem. Ele pode ser baixado usando o seguinte exemplo de código:

# Este exemplo de código demonstra como baixar o arquivo atualizado do Excel.
# inicialização da API
file_api = groupdocs_editor_cloud.FileApi.from_config(configuration)

# ⇬ Fazer download do arquivo
request = groupdocs_editor_cloud.DownloadFileRequest("edited.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\\Editor\\")

Adicionar tabela na planilha do Excel usando Python

Podemos adicionar uma tabela na planilha do Excel seguindo as etapas mencionadas anteriormente. No entanto, precisamos atualizar o HTML para adicionar uma tabela no documento conforme mostrado abaixo:

html = html.replace("</TABLE>", """</TABLE> <br/><table style="width: 100%;background-color: #dddddd;border: 1px solid black;">
<caption style=\"font-weight:bold;\"> Persons List</caption>
<tr><th style="background-color: #04AA6D; color: white;">First Name</th><th style="background-color: #04AA6D; color: white;">Last Name</th><th style="background-color: #04AA6D; color: white;">Age</th></tr>
<tr><td>Jill</td><td>Smith</td><td>50</td></tr>
<tr><td>Eve</td><td>Jackson</td><td>94</td></tr>
</table>""")

O exemplo de código a seguir mostra como adicionar uma tabela em uma planilha do Excel usando uma API REST em Python. Siga as etapas mencionadas anteriormente para fazer upload e download de um arquivo.

# Este exemplo de código demonstra como editar uma planilha do Excel e inserir uma nova tabela.
# inicialização da API
editApi = groupdocs_editor_cloud.EditApi.from_keys(client_id, client_secret)
fileApi = groupdocs_editor_cloud.FileApi.from_keys(client_id, client_secret)

# Carregue o documento carregado em estado editável
fileInfo = groupdocs_editor_cloud.FileInfo("sample.xlsx")

# Definir opções de carregamento da planilha
loadOptions = groupdocs_editor_cloud.SpreadsheetLoadOptions()
loadOptions.file_info = fileInfo

# Forneça o caminho da pasta de saída 
loadOptions.output_path = "output"
# Forneça o índice da planilha para editar
loadOptions.worksheet_index = 0
# Carregar a folha
loadResult = editApi.load(groupdocs_editor_cloud.LoadRequest(loadOptions))        

# Baixar documento html
htmlFile = fileApi.download_file(groupdocs_editor_cloud.DownloadFileRequest(loadResult.html_path))
html = ""       

with open(htmlFile, 'r') as file:
    html = file.read()

# Insira a tabela  
html = html.replace("</TABLE>", """</TABLE> <br/><table style="width: 100%;background-color: #dddddd;border: 1px solid black;">
<caption style=\"font-weight:bold;\"> Persons List</caption>
<tr><th style="background-color: #04AA6D; color: white;">First Name</th><th style="background-color: #04AA6D; color: white;">Last Name</th><th style="background-color: #04AA6D; color: white;">Age</th></tr>
<tr><td>Jill</td><td>Smith</td><td>50</td></tr>
<tr><td>Eve</td><td>Jackson</td><td>94</td></tr>
</table>""")

# Carregar html de volta ao armazenamento
with open(htmlFile, 'w') as file:
    file.write(html)

fileApi.upload_file(groupdocs_editor_cloud.UploadFileRequest(loadResult.html_path, htmlFile))

# Salvar html de volta para xlsx
saveOptions = groupdocs_editor_cloud.SpreadsheetSaveOptions()
saveOptions.file_info = fileInfo
saveOptions.output_path = "edited.xlsx"
saveOptions.html_path = loadResult.html_path
saveOptions.resources_path = loadResult.resources_path
saveResult = editApi.save(groupdocs_editor_cloud.SaveRequest(saveOptions))

# Feito
print("Document edited: " + saveResult.path)
Adicionar tabela na planilha do Excel usando Python.

Adicionar tabela na planilha do Excel usando Python.

Experimente on-line

Experimente a seguinte ferramenta de edição XLSX on-line gratuita, desenvolvida usando a API acima. https://products.groupdocs.app/editor/xlsx

Conclusão

Neste artigo, aprendemos:

  • como editar dados de planilhas do Excel na nuvem;
  • como adicionar uma tabela na planilha do Excel usando Python;
  • fazer upload do arquivo Excel para a nuvem;
  • como baixar o arquivo Excel atualizado da nuvem.

Além disso, você pode aprender mais sobre GroupDocs.Editor 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