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
- Editar arquivos do Excel usando uma API REST em Python
- Adicionar tabela na planilha do Excel usando Python
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:
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)
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)
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.