📚

python-docx でWordファイルを操作する

2024/07/22に公開

ライブラリーのinstall

pip install python-docx  

https://python-docx.readthedocs.io/en/latest/

Wordファイルを読み込み

  1. 手元に以下のに内容が書いたwordファイルを用意する
**ABC株式会社 社内規定**

**第1章 総則**

第1条(目的)  
本規定は、ABC株式会社(以下、「会社」という)の業務運営および従業員の勤務に関する基本的事項を定め、全従業員が規律を守り、業務の効率化と職場環境の向上を図ることを目的とする。

第2条(適用範囲)  
本規定は、会社に所属する全ての従業員に適用される。

**第2章 勤務**

第3条(勤務時間)  
1. 会社の標準勤務時間は、午前9時から午後6時までとする。  
2. 昼休みは午後12時から午後1時までの1時間とする。  
3. 業務の都合により、上記の勤務時間を変更する場合がある。

第4条(休暇)  
1. 年次有給休暇は、法定の基準に従い付与する。  
2. その他の休暇(産前・産後休暇、育児休暇、介護休暇等)は、労働基準法および関連法令に基づき付与する。

**第3章 業務遂行**

第5条(職務遂行)  
1. 従業員は、職務に対し誠実に取り組み、業務遂行にあたっては効率と品質を重視すること。  
2. 会社の財産や機密情報を適切に管理し、不正利用を行わないこと。

第6条(報告義務)  
従業員は、業務に関連する重要事項について速やかに上司に報告しなければならない。

**第4章 職場環境**

第7条(ハラスメント防止)  
1. 会社は、職場におけるハラスメントを禁止し、全従業員が安心して働ける環境を提供する。  
2. ハラスメントの疑いがある場合、従業員は速やかに上司または人事部に報告すること。

第8条(安全衛生)  
1. 会社は、安全で健康的な職場環境を維持するために必要な措置を講じる。  
2. 従業員は、安全衛生に関する規定を遵守し、事故防止に努めること。

**第5章 懲戒**

第9条(懲戒処分)  
1. 従業員が本規定に違反した場合、会社はその行為の内容に応じて懲戒処分を行うことができる。  
2. 懲戒処分の種類には、戒告、減給、停職、解雇などが含まれる。

**第6章 規定の改廃**

第10条(改廃手続)  
本規定の改廃は、必要に応じて会社の経営会議の承認を経て行うものとする。

附則  
本規定は、2024年5月18日より施行する。

以上がABC株式会社の基本的な社内規定となります。この規定は、従業員が業務を円滑に遂行し、健全な職場環境を維持するための指針として機能します。従業員は本規定を熟読し、遵守することが求められます。
  1. 以下のコードを実行し、結果がコンソールに出力されていることを確認する
main.py
from docx import Document  
  
# 既存のWordファイルを読み込む  
doc = Document('input.docx')  
  
# ドキュメントの内容を表示  
for paragraph in doc.paragraphs:  
    print(paragraph.text)  

新しいWordファイルの作成

  1. 以下のコードを実行し、新しいwordファイルが作成されたことを確認する
main.py
from docx import Document  
  
# 新規ドキュメントの作成  
doc = Document()  

# 文章を追加  
doc.add_paragraph("これはサンプルの文章です。")

# 空のドキュメントを保存  
doc.save('document.docx')  
  
# 新しいドキュメントを作成  
doc = Document()  

Wordファイルへの書きこみ

  1. 以下のコードを実行する
main.py
from docx import Document  
  
# 既存のWordファイルを読み込む  
doc = Document('<wordファイルのパス>')  
  
# 新しい段落を追加  
doc.add_paragraph('これは新しい段落です。')  
  
# ファイルを保存  
doc.save('output.docx')  
  1. 同じディレクトリにoutput.docxが作成されたことを確認する。
    また、最終行に これは新しい段落です。 が追加されたことを確認する。

WordファイルをPDFに変換する

  1. 以下のコマンドを実行し、ライブラリーがinstallされたことを確認する。
pip install pywin32  
  1. 以下のコードを実行し、作成したwordファイルをPDFに変換する
main.py
import win32com.client  
import os  
  
def convert_docx_to_pdf(docx_path, pdf_path):  
    try:  
        # Wordアプリケーションを起動  
        word = win32com.client.Dispatch("Word.Application")  
          
        # ファイルの存在確認  
        if not os.path.exists(docx_path):  
            raise FileNotFoundError(f"{docx_path} が見つかりません。")  

        # ドキュメントを開く  
        doc = word.Documents.Open(docx_path)  
          
        # PDFとして保存  
        doc.SaveAs(pdf_path, FileFormat=17)  
        doc.Close()  
    except Exception as e:  
        print(f"エラーが発生しました: {e}")  
    finally:  
        word.Quit()  
  
# DOCXファイルのパスとPDFファイルの保存先を指定  
docx_path = os.path.abspath('<wordファイルのパス>')  
pdf_path = os.path.abspath('<pdfファイルの名前>')  
  
convert_docx_to_pdf(docx_path, pdf_path)  

ヘッドウォータース

Discussion