Jako programista Python możesz z łatwością programowo edytować prezentacje programu PowerPoint. Możesz aktualizować zawartość slajdów bez instalowania jakiejkolwiek zewnętrznej aplikacji przy użyciu języka Python. Ten artykuł skupi się na tym, jak edytować prezentacje programu PowerPoint przy użyciu interfejsu API REST w języku Python.
W tym artykule zostaną omówione następujące tematy:
- Interfejs API REST edytora dokumentów i zestaw SDK języka Python
- Edytuj prezentacje PowerPoint za pomocą REST API w Python
- Zaktualizuj obrazy w prezentacji programu PowerPoint przy użyciu języka Python
Interfejs API REST edytora dokumentów i zestaw SDK języka Python
Do edytowania PPTX będę używał Python SDK of GroupDocs.Editor Cloud API. Umożliwia programową edycję dokumentów edytora Word, arkuszy Excel lub dokumentów w innych obsługiwanych formatach. Udostępnia również zestawy SDK .NET, Java, PHP, Ruby, Android i Node.js jako członkowie rodziny edytorów dokumentów dla Cloud API.
Możesz zainstalować GroupDocs.Editor-Cloud w swoim projekcie Python za pomocą następującego polecenia w konsoli:
pip install groupdocs_editor_cloud
Zanim zaczniesz postępować zgodnie z instrukcjami i dostępnymi przykładami kodu, uzyskaj swój identyfikator klienta i klucz tajny klienta z panelu nawigacyjnego. Po uzyskaniu identyfikatora i tajnego kodu dodaj kod, jak pokazano poniżej:
client_id = "da0c487d-c1c0-45ae-b7bf-43eaf53c5ad5"
client_secret = "479db2b01dcb93a3d4d20efb16dea971"
configuration = groupdocs_editor_cloud.Configuration(client_id, client_secret)
configuration.api_base_url = "https://api.groupdocs.cloud"
my_storage = ""
Edytuj prezentacje PowerPoint za pomocą REST API w Python
Możesz edytować prezentację PowerPoint, wykonując proste czynności wymienione poniżej:
Prześlij dokument
Przede wszystkim prześlij prezentację PowerPoint do chmury, korzystając z przykładowego kodu podanego poniżej:
# utwórz instancję api
file_api = groupdocs_editor_cloud.FileApi.from_config(configuration)
# prześlij przykładowy plik
request = groupdocs_editor_cloud.UploadFileRequest("sample.pptx", "C:\\Files\\sample.pptx", my_storage)
response = file_api.upload_file(request)
W rezultacie plik PPTX zostanie przesłany do Cloud Storage i będzie dostępny w sekcji plików Twojego pulpitu nawigacyjnego.
Edytuj prezentację PowerPoint za pomocą Python
Wykonaj czynności wymienione poniżej, aby programowo edytować prezentację programu PowerPoint.
- Utwórz instancje File API i Edit API.
- Podaj ścieżkę pliku wejściowego
- Podaj opcje wczytywania prezentacji
- Załaduj plik za pomocą metody Load Edit API
- Pobierz dokument HTML za pomocą metody Download File File API
- Edytuj pobrany dokument HTML
- Prześlij kod HTML z powrotem za pomocą metody Prześlij plik interfejsu File API
- Zapewnij PresentationSaveOptions, aby zapisać w PPTX
- Zapisz HTML z powrotem do PPTX, używając metody Save Edit API
Poniższy fragment kodu pokazuje, jak zaktualizować dokument prezentacji programu PowerPoint przy użyciu interfejsu API REST.
# inicjalizacja 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 go do stanu edytowalnego
fileInfo = groupdocs_editor_cloud.FileInfo("sample.pptx")
loadOptions = groupdocs_editor_cloud.PresentationLoadOptions()
loadOptions.file_info = fileInfo
loadOptions.output_path = "output"
loadOptions.slide_number = 0
loadOptions.show_hidden_slides = True
loadResult = editApi.load(groupdocs_editor_cloud.LoadRequest(loadOptions))
# pobierz dokument html
htmlFile = fileApi.download_file(groupdocs_editor_cloud.DownloadFileRequest(loadResult.html_path))
html = ""
# przeczytaj plik HTML
with open(htmlFile, 'r') as file:
html = file.read()
# zastąpić tekst
html = html.replace("Hello World", "Welcome")
# prześlij kod 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 PPTX
saveOptions = groupdocs_editor_cloud.PresentationSaveOptions()
saveOptions.file_info = fileInfo
saveOptions.output_path = "edited.pptx"
saveOptions.html_path = loadResult.html_path
saveOptions.resources_path = loadResult.resources_path
saveOptions.password = "password"
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 prezentacji programu PowerPoint (PPTX) w chmurze. Możesz go pobrać, korzystając z następującego przykładowego kodu:
# inicjalizacja API
file_api = groupdocs_editor_cloud.FileApi.from_config(configuration)
# pobierz plik
request = groupdocs_editor_cloud.DownloadFileRequest("edited.pptx", my_storage)
response = file_api.download_file(request)
# przenieś pobrany plik do katalogu roboczego
shutil.move(response, "C:\\Files\\")
Zaktualizuj obrazy w prezentacji programu PowerPoint przy użyciu języka Python
Wykonaj czynności wymienione poniżej, aby programowo zaktualizować obraz w prezentacji programu PowerPoint.
- Utwórz instancje File API i Edit API.
- Podaj ścieżkę pliku wejściowego
- Podaj opcje wczytywania prezentacji
- Załaduj plik za pomocą metody Load Edit API
- Pobierz dokument HTML za pomocą metody Download File File API
- Prześlij plik obrazu
- Edytuj pobrany dokument HTML and update the image
- Prześlij kod HTML z powrotem za pomocą metody Prześlij plik interfejsu File API
- Zapewnij PresentationSaveOptions, aby zapisać w PPTX
- Zapisz HTML z powrotem do PPTX, używając metody Save w Edit API
Poniższy fragment kodu pokazuje, jak zaktualizować obraz na slajdzie prezentacji programu PowerPoint przy użyciu interfejsu API REST.
# inicjalizacja 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 go do stanu edytowalnego
fileInfo = groupdocs_editor_cloud.FileInfo("sample.pptx")
loadOptions = groupdocs_editor_cloud.PresentationLoadOptions()
loadOptions.file_info = fileInfo
loadOptions.output_path = "output"
loadOptions.slide_number = 0
loadResult = editApi.load(groupdocs_editor_cloud.LoadRequest(loadOptions))
# pobierz dokument html
htmlFile = fileApi.download_file(groupdocs_editor_cloud.DownloadFileRequest(loadResult.html_path))
html = ""
# przeczytaj plik HTML
with open(htmlFile, 'r') as file:
html = file.read()
# prześlij obraz do zastąpienia
request = groupdocs_editor_cloud.UploadFileRequest(loadOptions.output_path + "/sample.files/groupdocs.png", "C:\\Files\\groupdocs.png", "")
response = fileApi.upload_file(request)
# zastąp obraz
html = html.replace("Picture 2.png", "groupdocs.png")
# prześlij kod 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 PPTX
saveOptions = groupdocs_editor_cloud.PresentationSaveOptions()
saveOptions.file_info = fileInfo
saveOptions.output_path = "edited.pptx"
saveOptions.html_path = loadResult.html_path
saveOptions.resources_path = loadResult.resources_path
saveResult = editApi.save(groupdocs_editor_cloud.SaveRequest(saveOptions))
Interfejs API tworzy plik HTML w zdefiniowanej ścieżce PresentationLoadOptions.output. Wszystkie pliki zasobów powiązane z utworzonym plikiem HTML są umieszczane w podkatalogu plików poprzedzonym nazwą pliku wejściowego, na przykład w tym przypadku „sample.files”. Musisz przesłać obraz do tego katalogu, a następnie zastąpić go obrazem docelowym. Wszystkie obrazy na slajdzie mają nazwy Zdjęcie 2, Zdjęcie 3 itd. w atrybucie „src”.
Wypróbuj online
Wypróbuj następujące bezpłatne narzędzie do edycji programu PowerPoint online, które zostało opracowane przy użyciu powyższego interfejsu API. https://products.groupdocs.app/editor/pptx
Wniosek
W tym artykule nauczyłeś się, jak edytować prezentacje programu PowerPoint w chmurze za pomocą interfejsu API REST edytora dokumentów przy użyciu języka Python. Dowiedziałeś się również, jak programowo przesłać plik PPTX do chmury, a następnie pobrać zaktualizowany plik z chmury. 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.