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
- Edytuj pliki programu Excel przy użyciu interfejsu API REST w języku Python
- Dodaj tabelę w arkuszu Excela za pomocą Python
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:
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)
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)
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.