Python 開発者は、PowerPoint プレゼンテーションをプログラムで簡単に編集できます。 Python を使用すると、外部アプリケーションをインストールせずにスライドのコンテンツを更新できます。この記事では、Python の REST API を使用して PowerPoint プレゼンテーションを編集する方法に焦点を当てます。
この記事では次のトピックについて説明します。
- ドキュメント エディター REST API および Python SDK
- Python の REST API を使用して PowerPoint プレゼンテーションを編集する
- Python を使用して PowerPoint プレゼンテーションの画像を更新する
ドキュメント エディター REST API および Python SDK
PPTX の編集には、GroupDocs.Editor Cloud の Python SDK API を使用します。これを使用すると、Word 処理ドキュメント、Excel シート、またはその他のサポートされている形式のドキュメントをプログラムで編集できます。また、クラウド API の ドキュメント エディター ファミリ メンバー として、.NET、Java、PHP、Ruby、Android、および Node.js SDK も提供します。
コンソールで次のコマンドを使用して、GroupDocs.Editor-Cloud を Python プロジェクトにインストールできます。
pip install groupdocs_editor_cloud
手順と利用可能なコード例を開始する前に、ダッシュボード からクライアント ID とクライアント シークレットを取得してください。 ID とシークレットを取得したら、以下に示すようにコードを追加します。
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 = ""
Python の REST API を使用して PowerPoint プレゼンテーションを編集する
以下の簡単な手順に従って、PowerPoint プレゼンテーションを編集できます。
ドキュメントをアップロードする
まず、以下のコード例を使用して、PowerPoint プレゼンテーションをクラウドにアップロードします。
# APIのインスタンスを作成する
file_api = groupdocs_editor_cloud.FileApi.from_config(configuration)
# サンプルファイルをアップロードする
request = groupdocs_editor_cloud.UploadFileRequest("sample.pptx", "C:\\Files\\sample.pptx", my_storage)
response = file_api.upload_file(request)
その結果、PPTX ファイルが Cloud Storage にアップロードされ、ダッシュボードの ファイル セクション で利用できるようになります。
Python を使用して PowerPoint プレゼンテーションを編集する
PowerPoint プレゼンテーションをプログラムで編集するには、以下の手順に従ってください。
- ファイル API インスタンスと 編集 API インスタンスを作成します
- 入力ファイルのパスを指定します
- PresentationLoadOptions を提供する
- Edit APIのLoadメソッドでファイルを読み込みます。
- File APIのDownload Fileメソッドを使用してHTMLドキュメントをダウンロードします。
- ダウンロードしたHTMLドキュメントを編集する
- File API の Upload File メソッドを使用して HTML をアップロードして戻します
- PPTX に保存するための PresentationSaveOptions を提供します
- Edit API の Save メソッドを使用して HTML を PPTX に保存します。
次のコード スニペットは、REST API を使用して PowerPoint プレゼンテーション ドキュメントを更新する方法を示しています。
# APIの初期化
editApi = groupdocs_editor_cloud.EditApi.from_keys(client_id, client_secret)
fileApi = groupdocs_editor_cloud.FileApi.from_keys(client_id, client_secret)
# 編集可能な状態にロードします
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))
# HTMLドキュメントをダウンロードする
htmlFile = fileApi.download_file(groupdocs_editor_cloud.DownloadFileRequest(loadResult.html_path))
html = ""
# HTMLファイルを読む
with open(htmlFile, 'r') as file:
html = file.read()
# テキストを置換する
html = html.replace("Hello World", "Welcome")
# HTML をストレージにアップロードして戻す
with open(htmlFile, 'w') as file:
file.write(html)
fileApi.upload_file(groupdocs_editor_cloud.UploadFileRequest(loadResult.html_path, htmlFile))
# HTML を 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))
# 終わり
print("Document edited: " + saveResult.path)
更新されたファイルをダウンロードする
上記のコード サンプルは、編集した PowerPoint プレゼンテーション (PPTX) ファイルをクラウドに保存します。次のコードサンプルを使用してダウンロードできます。
# APIの初期化
file_api = groupdocs_editor_cloud.FileApi.from_config(configuration)
# ファイルをダウンロードする
request = groupdocs_editor_cloud.DownloadFileRequest("edited.pptx", my_storage)
response = file_api.download_file(request)
# ダウンロードしたファイルを作業ディレクトリに移動します
shutil.move(response, "C:\\Files\\")
Python を使用して PowerPoint プレゼンテーションの画像を更新する
PowerPoint プレゼンテーションの画像をプログラムで更新するには、以下の手順に従ってください。
- ファイル API インスタンスと 編集 API インスタンスを作成します
- 入力ファイルのパスを指定します
- PresentationLoadOptions を提供する
- Edit APIのLoadメソッドでファイルを読み込みます。
- File APIのDownload Fileメソッドを使用してHTMLドキュメントをダウンロードします。
- 画像ファイルをアップロードする
- ダウンロードしたHTMLドキュメントを編集する and update the image
- File API の Upload File メソッドを使用して HTML をアップロードして戻します
- PPTX に保存するための PresentationSaveOptions を提供します
- Edit API の Save メソッドを使用して HTML を PPTX に保存します。
次のコード スニペットは、REST API を使用して PowerPoint プレゼンテーション スライド上の画像を更新する方法を示しています。
# APIの初期化
editApi = groupdocs_editor_cloud.EditApi.from_keys(client_id, client_secret)
fileApi = groupdocs_editor_cloud.FileApi.from_keys(client_id, client_secret)
# 編集可能な状態にロードします
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))
# HTMLドキュメントをダウンロードする
htmlFile = fileApi.download_file(groupdocs_editor_cloud.DownloadFileRequest(loadResult.html_path))
html = ""
# HTMLファイルを読む
with open(htmlFile, 'r') as file:
html = file.read()
# 置き換える画像をアップロードする
request = groupdocs_editor_cloud.UploadFileRequest(loadOptions.output_path + "/sample.files/groupdocs.png", "C:\\Files\\groupdocs.png", "")
response = fileApi.upload_file(request)
# 画像を置き換える
html = html.replace("Picture 2.png", "groupdocs.png")
# HTML をストレージにアップロードして戻す
with open(htmlFile, 'w') as file:
file.write(html)
fileApi.upload_file(groupdocs_editor_cloud.UploadFileRequest(loadResult.html_path, htmlFile))
# HTML を 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))
API は、定義された PresentationLoadOptions.output\path に HTML ファイルを作成します。作成された HTML ファイルに関連付けられたすべてのリソース ファイルは、この場合「sample.files」などの入力ファイル名が接頭辞として付けられた files サブディレクトリに配置されます。このディレクトリに画像をアップロードして、ターゲット画像に置き換える必要があります。スライド上のすべての画像には、「src」属性で Picture 2、Picture 3 などの名前が付けられます。
オンラインで試す
上記の API を使用して開発された、次の無料のオンライン PowerPoint 編集ツールをお試しください。 https://products.groupdocs.app/editor/pptx
結論
この記事では、Python を使用したドキュメント エディター REST API を使用してクラウド上で PowerPoint プレゼンテーションを編集する方法を学習しました。また、プログラムによって PPTX ファイルをクラウドにアップロードし、更新されたファイルをクラウドからダウンロードする方法についても学習しました。 GroupDocs.Editor Cloud API の詳細については、ドキュメント を使用して学習できます。また、ブラウザーを通じて API を直接視覚化して操作できる API リファレンス セクションも提供しています。不明な点がある場合は、フォーラムでお気軽にお問い合わせください。