業務や日報の作成時など、どうしてもWordファイルを扱わなければならないことがあると思います。日々の作業で、定型的なことなのに…となることがあると思います。
そんなときに効率よく作業できたら…、なんとPythonなら簡単に作成できてしまうんです。本記事では、python-docxを使ってよくやりそうなことを試してみます。
Wordファイルの作成が必要な人に少しでも参考になったら嬉しいです!
python-docxをインストールする
pip install python-docx
インストールできたらさっそくdocxファイルの作成と、保存をしてみましょう!
pythonでdocxを作って保存してみる
import docx
doc = docx.Document()
doc.add_paragraph('Hello, world!')
doc.save('ex01.docx')
文章をスタイル「表題」で追加、複数行、太文字など
ちょっとした応用ですが、こんな事もできるという一例。
import docx
doc = docx.Document()
doc.add_heading('表題', 0)
p = doc.add_paragraph('本文 1行目 ')
p.add_run('太字').bold = True
doc.add_paragraph('本文 2行目')
doc.save('ex02.docx')
プログラムでここまで自動で生成できるんですね。面白い。
表を作る
import docx
records = (
(1, '太郎', 160),
(2, '次郎', 155),
(3, '花子', 155)
)
doc = docx.Document()
table = doc.add_table(rows=1, cols=3)
header_cells = table.rows[0].cells
header_cells[0].text = 'no'
header_cells[1].text = '名前'
header_cells[2].text = '身長'
for no, name, height in records:
row_cells = table.add_row().cells
row_cells[0].text = str(no)
row_cells[1].text = name
row_cells[2].text = str(height)
doc.save('ex03.docx')
表にスタイルを設定してみる
一つ上のコードにこれを加えてみてください。スタイル名の一覧のリンクです。
table.style = doc.styles['Light List Accent 3']
画像を挿入する
import docx
doc = docx.Document()
doc.add_picture('./sample.png', width=docx.Inches(1.0))
doc.save('ex04.docx')
とても簡単にWordのファイルの作成ができることがわかると思います。Wordファイルの作成が必要な人に少しでも参考になったら嬉しいです!