Pythonでpptxファイルを作成する目的
今回はPythonでパワーポイントファイル(pptx)を作成します。ライブラリとして、python-pptx を使用します。正直パワポファイルを作成するだけであれば右クリック⇒新規作成 ですぐにできますが、ここではその後のパワポで定期的な報告資料を求められてしまったなどのときの為に資料の自動作成をする前準備として扱っていきます。
例えばこんな方にお薦め
- 最近Pythonを使い始めて、どんなことができるか試してみたい
- 写真やグラフをパワポで見やすい形で整理しておきたい
- パワポで定型的で定期的な報告資料を求められてしまった、そして資料作成というルーチン作業が増えてしまった
前準備として、python-pptxライブラリのインストールを済ませておきます。説明には下記のコードを使います。
今回のコード
import pptx import os cd = os.getcwd() prs = pptx.Presentation() prs.slides.add_slide(prs.slide_layouts[0]) prs.save(cd + '/test.pptx')
上記のコードを実行すると、.pyファイルと同じディレクトリに"test.pptx" というパワポファイルができています。
コードの解説
それではコードの解説をしていきます。
import pptx
pptxモジュールをインポートします。パワポを操作するのに使用します。
import os
osモジュールをインポートします。現在のディレクトリを取得するのに使用します。
cd = os.getcwd()
cd変数に現在のディレクトリを格納します。
prs = pptx.Presentation()
pptx.Presentation() をprsという変数で表します。以降、毎回pptx.Presentation と記述しなくてもprsと書いて省略することができます。
prs.slides.add_slide(prs.slide_layouts[0])
全行で記述したパワポ prs にスライドを追加します。また、引数でスライドのレイアウトを指定しています。ここでは[0]がレイアウトにあたります。この数字を変えると、選択されるレイアウトが変わります。新規にパワポファイルを作成してレイアウトで表示される下の画像の部分を選択しているイメージです。
prs.save(cd + '/test.pptx')
prs.save() でこれまでのprsへの作業内容を保存します。()内の引数としてディレクトリと、ファイル名を入れることで保存する場所とファイル名を指定することができます。ここでは、osコマンドで取得したカレントディレクトリcd(=.pyのある作業ディレクトリ)にtest.pptx というファイル名で保存しています。開いてみると、レイアウト0のスライドを持つパワポファイルtest.pptx が確かに作成されていることがわかります。
まとめ
今回は、Pythonを使ってパワポファイルを作成してみました。これだけでは便利さが実感できないかもしれませんが、作成したパワポファイルの内容を更に編集してレポート自動作成を目指していきたいと思います。