Python: Microsoft PowerPointファイル(*.ppt)のテキストデータ抽出 – pywin32, win32com

Microsoft Office PowerPointファイルの検索クローラをPythonで作成する際、表題の通り、*.pptからテキストデータに変換する必要がある。本記事ではwin32comライブラリを用いてPythonスクリプトからスライド中の各シェイプボックスからテキストデータを抽出するスクリプトを紹介する。
(尚、世には多数のOfficeファイルコンバーターが有るので、このソースを使うことが最適とは限らない)

ソースコード

エラーハンドリングは必要最低限である為、扱うファイル特性に応じて追加が必要な場合もある。

後述の結果を見て分かるとおり、テキストデータの保持構成は以下の通り。

テスト対象ファイル

検証用サンプルファイル(ppt)
※対象ファイルは当方でウィルスチェックしたものをアップロードしているが、不安な方は自前でサンプルを用意すると良い。(基本Webにある物は疑ってかかるのが良い)

実行環境

Windows7 (32bit), Python2.7.7, pywin32 219, Office 2003

実行結果

実行時にPowerPointも立ち上がり、処理後、終了する。

参考サイト