Edytuj arkusz Excela za pomocą REST API w Python.

Excel jest jednym z najpopularniejszych i najczęściej używanych arkuszy kalkulacyjnych. Pozwala nam organizować, analizować i przechowywać dane w formie tabelarycznej. Możemy łatwo dodawać, edytować lub usuwać zawartość plików Excela za pomocą Python. W tym artykule dowiemy się, jak edytować arkusz Excela za pomocą REST API w Python.

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

Interfejs API REST edytora arkuszy kalkulacyjnych programu Excel i zestaw SDK języka Python

Do modyfikowania plików XLSX będziemy używać Python SDK of GroupDocs.Editor Cloud API. Umożliwia edycję dokumentów w obsługiwanych formatach. Zainstaluj go za pomocą następującego polecenia w konsoli:

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

# Ten przykład kodu pokazuje, jak dodać identyfikator klienta i klucz tajny do kodu.
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"

Edytuj plik programu Excel przy użyciu interfejsu API REST w języku Python

Możemy edytować pliki Excela, wykonując proste czynności podane poniżej:

  1. Prześlij plik XLSX do chmury
  2. Edytuj Dane z arkusza kalkulacyjnego Excel
  3. Pobierz zaktualizowany plik

Prześlij dokument

Najpierw prześlemy plik XLSX do chmury, korzystając z przykładowego kodu podanego poniżej:

# Ten przykład kodu demonstruje, jak przekazać plik programu Excel do chmury.
# Utwórz instancję interfejsu API
file_api = groupdocs_editor_cloud.FileApi.from_config(configuration)

# prześlij przykładowy plik
request = groupdocs_editor_cloud.UploadFileRequest("sample.xlsx", "C:\\Files\\\Editor\\sample.xlsx", my_storage)
response = file_api.upload_file(request)

W rezultacie przesłany plik XLSX będzie dostępny w sekcji plików pulpitu nawigacyjnego w chmurze.

Edytuj dane arkusza kalkulacyjnego Excel w Python

Możemy edytować zawartość arkusza Excela, wykonując poniższe czynności:

  • Najpierw utwórz instancje FileApi i EditApi.
  • Następnie podaj ścieżkę przesłanego pliku XLSX.
  • Następnie pobierz plik jako dokument HTML.
  • Następnie przeczytaj pobrany plik HTML jako ciąg znaków.
  • Następnie edytuj kod HTML i zapisz zaktualizowany dokument HTML.
  • Następnie prześlij zaktualizowany plik HTML.
  • Na koniec zapisz HTML z powrotem do XLSX, używając metody EditApi.save().

Poniższy przykładowy kod pokazuje, jak edytować dane arkusza programu Excel przy użyciu interfejsu API REST w języku Python.

# Ten przykład kodu demonstruje, jak edytować zawartość arkusza programu Excel.
# Inicjalizacja interfejsu API
editApi = groupdocs_editor_cloud.EditApi.from_keys(client_id, client_secret)
fileApi = groupdocs_editor_cloud.FileApi.from_keys(client_id, client_secret)

# Załaduj przesłany dokument do stanu edytowalnego
fileInfo = groupdocs_editor_cloud.FileInfo("sample.xlsx")

# Zdefiniuj opcje ładowania arkusza kalkulacyjnego
loadOptions = groupdocs_editor_cloud.SpreadsheetLoadOptions()
loadOptions.file_info = fileInfo

# Podaj ścieżkę do folderu wyjściowego 
loadOptions.output_path = "output"
# Podaj indeks arkusza do edycji
loadOptions.worksheet_index = 0
# Załaduj arkusz
loadResult = editApi.load(groupdocs_editor_cloud.LoadRequest(loadOptions))        

# Pobierz dokument HTML
htmlFile = fileApi.download_file(groupdocs_editor_cloud.DownloadFileRequest(loadResult.html_path))
html = ""       

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

# Edytuj coś...    
html = html.replace("Welcome", "This is a sample sheet!")

# Prześlij HTML z powrotem do magazynu
with open(htmlFile, 'w') as file:
    file.write(html)

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

# Zapisz html z powrotem do 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))

# Zrobione
print("Document edited: " + saveResult.path)
Edytuj plik programu Excel przy użyciu interfejsu API REST w języku Python.

Edytuj plik programu Excel przy użyciu interfejsu API REST w języku Python.

Pobierz zaktualizowany plik

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

# Ten przykład kodu pokazuje, jak pobrać zaktualizowany plik programu Excel.
# Inicjalizacja interfejsu API
file_api = groupdocs_editor_cloud.FileApi.from_config(configuration)

# Pobieranie pliku
request = groupdocs_editor_cloud.DownloadFileRequest("edited.xlsx", my_storage)
response = file_api.download_file(request)

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

Dodaj tabelę w arkuszu Excela za pomocą Python

Możemy dodać tabelę w arkuszu Excela, wykonując czynności wymienione wcześniej. Musimy jednak zaktualizować kod HTML, aby dodać tabelę do dokumentu, jak pokazano poniżej:

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

Poniższy przykładowy kod pokazuje, jak dodać tabelę w arkuszu kalkulacyjnym programu Excel przy użyciu interfejsu API REST w języku Python. Wykonaj czynności wymienione wcześniej, aby przesłać i pobrać plik.

# Ten przykład kodu demonstruje, jak edytować arkusz programu Excel i wstawiać nową tabelę.
# Inicjalizacja interfejsu API
editApi = groupdocs_editor_cloud.EditApi.from_keys(client_id, client_secret)
fileApi = groupdocs_editor_cloud.FileApi.from_keys(client_id, client_secret)

# Załaduj przesłany dokument do stanu edytowalnego
fileInfo = groupdocs_editor_cloud.FileInfo("sample.xlsx")

# Zdefiniuj opcje ładowania arkusza kalkulacyjnego
loadOptions = groupdocs_editor_cloud.SpreadsheetLoadOptions()
loadOptions.file_info = fileInfo

# Podaj ścieżkę do folderu wyjściowego 
loadOptions.output_path = "output"
# Podaj indeks arkusza do edycji
loadOptions.worksheet_index = 0
# Załaduj arkusz
loadResult = editApi.load(groupdocs_editor_cloud.LoadRequest(loadOptions))        

# Pobierz dokument HTML
htmlFile = fileApi.download_file(groupdocs_editor_cloud.DownloadFileRequest(loadResult.html_path))
html = ""       

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

# Wypełnij tabelę  
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>""")

# Prześlij HTML z powrotem do magazynu
with open(htmlFile, 'w') as file:
    file.write(html)

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

# Zapisz html z powrotem do 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))

# Zrobione
print("Document edited: " + saveResult.path)
Dodaj tabelę w arkuszu Excela za pomocą Python.

Dodaj tabelę w arkuszu Excela za pomocą Python.

Wypróbuj online

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

Wniosek

W tym artykule dowiedzieliśmy się:

  • jak edytować dane arkuszy Excel w chmurze;
  • jak dodać tabelę w arkuszu Excela za pomocą Python;
  • przesłać plik Excela do chmury;
  • jak pobrać zaktualizowany plik Excela z chmury.

Poza tym możesz dowiedzieć się więcej o GroupDocs.Editor 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ż