Python を使用して Word 文書を作成、読み込み、更新することは、多くの開発者にとって重要なニーズです。レポートの生成、既存文書の操作、文書作成プロセスの自動化など、Word 文書をプログラムで扱える能力は、生産性と効率の向上に大きく寄与します。本記事では、Spire.Doc for Python を利用して、Python で Word 文書を作成、読み込み、更新する方法を解説します。 Python で Word 文書をゼロから作成する Python で Word 文書のテキストを読み込む Python で Word 文書を更新する Spire.Doc for Python のインストール この操作には、Spire.Doc for Python と plum-dispatch v1.7.4 が必要です。これらは、Spire.Doc for Python の公式ウェブサイトから手動でダウンロードするか、以下の pip コマンドでインストールできます。 pip install Spire.Doc Python で Word 文書をゼロから作成する Spire.Doc for Python は、Word 文書のモデルを表現するために Document クラスを提供しています。Word 文書は、最低でも 1 つのセクション(Section クラスで表現)を含み、各セクションは段落、表、グラフ、画像などさまざまな要素を格納するコンテナとして機能します。以下の手順では、Spire.Doc for Python を使って複数の段落を含むシンプルな Word 文書を作成する方法を紹介します。 Document クラスのインスタンスを生成します。 Document.AddSection() メソッドを使用してセクションを追加します。 Section.PageSetUp.Margins プロパティを利用して、ページ余白を設定します。 Section.AddParagraph() メソッドを使用して、セクションに複数の段落を追加します。 Paragraph.AppendText() メソッドを利用して、各段落にテキストを追加します。 ParagraphStyle オブジェクトを作成し、Paragraph.ApplyStyle() メソッドを使用して特定の段落にスタイルを適用します。 Document.SaveToFile() メソッドを使用して、Word ファイルとして文書を保存します。 Python from spire.doc import Document, FileFormat, BuiltinStyle, ParagraphStyle, HorizontalAlignment # ドキュメントオブジェクトを作成 doc = Document() # セクションを追加 section = doc.AddSection() # ページの余白を設定 section.PageSetup.Margins.All = 40 # タイトルを追加 titleParagraph = section.AddParagraph() titleParagraph.AppendText("Spire.Doc for Pythonの紹介") # 2つの段落を追加 bodyParagraph_1 = section.AddParagraph() bodyParagraph_1.AppendText("Spire.Doc for Pythonは、開発者が任意のPythonアプリケーション内で高速かつ高品質なパフォーマンスでWord文書を作成、読み取り、書き込み、変換、比較、印刷するために設計されたプロフェッショナルなPythonライブラリです。") bodyParagraph_2 = section.AddParagraph() bodyParagraph_2.AppendText("独立したWord用Python APIであるSpire.Doc for Pythonは、開発システムやターゲットシステムにMicrosoft Wordがインストールされている必要はありません。しかしながら、どの開発者のPythonアプリケーションにもMicrosoft Wordの文書作成機能を組み込むことが可能です。") # タイトルに見出し1のスタイルを適用 titleParagraph.ApplyStyle(BuiltinStyle.Heading1) # 段落用のスタイルを作成 style2 = ParagraphStyle(doc) style2.Name = "paraStyle" style2.CharacterFormat.FontName = "Yu Gothic UI" style2.CharacterFormat.FontSize = 13 doc.Styles.Add(style2) bodyParagraph_1.ApplyStyle("paraStyle") bodyParagraph_2.ApplyStyle("paraStyle") # 段落の水平位置揃えを設定 titleParagraph.Format.HorizontalAlignment = HorizontalAlignment.Center bodyParagraph_1.Format.HorizontalAlignment = HorizontalAlignment.Left bodyParagraph_2.Format.HorizontalAlignment = HorizontalAlignment.Left # 段落後の余白を設定 titleParagraph.Format.AfterSpacing = 10 bodyParagraph_1.Format.AfterSpacing = 10 # ファイルに保存 doc.SaveToFile("output/Word文書.docx", FileFormat.Docx2019) doc.Close() Python で Word 文書のテキストを読み込む Word 文書全体のテキストを取得するには、Document.GetText() メソッドを使用します。以下に手順を示します。 Document クラスのインスタンスを生成します。 Document.LoadFromFile() メソッドを使用して、Word 文書を読み込みます。 Document.GetText() メソッドを利用して、文書全体のテキストを取得します。 Python from spire.doc import * from spire.doc.common import * # Documentオブジェクトを作成 doc = Document() # Wordファイルを読み込む doc.LoadFromFile("output/Word文書.docx") # ドキュメント全体のテキストを取得 text = doc.GetText() # テキストを出力 print(text) Python で Word 文書を更新する 特定の段落にアクセスするには、Section.Paragraphs[index] プロパティを使用します。段落のテキストを変更する場合は、Paragraph.Text プロパティに新しいテキストを再割り当てします。以下の手順に従って操作します。 Document クラスのインスタンスを生成します。 Document.LoadFromFile() メソッドを使用して、Word 文書を読み込みます。 Document.Sections[index] プロパティを使用して、対象のセクションを取得します。 Section.Paragraphs[index] プロパティを利用して、対象の段落を取得します。 Paragraph.Text プロパティに新しいテキストを再割り当てします。 Document.SaveToFile() メソッドを使用して、変更内容を反映した Word ファイルとして文書を保存します。 Python from spire.doc import * from spire.doc.common import * # Document オブジェクトを作成 doc = Document() # Word ファイルを読み込む doc.LoadFromFile("output/Word文書.docx") # 特定のセクションを取得 section = doc.Sections[0] # 特定の段落を取得 paragraph = section.Paragraphs[1] # 段落のテキストを変更 paragraph.Text = "タイトルが変更されました" # ファイルに保存 doc.SaveToFile("output/更新されたWord文書.docx", FileFormat.Docx2019) doc.Close() 一時ライセンスを申請する 結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。 にお問い合わせ、30 日間有効な一時ライセンスを取得してください。