複数の Word 文書を 1 つに結合し、書式設定を維持する方法

Python を使用して複数の Word ドキュメントを結合する方法

REST API を使用して、クラウド上でプログラムによって 2 つ以上の Word ドキュメント を 1 つの Word ファイルに結合します。当社のオンライン docx Merger API は、ファイルを 1 つずつ処理するのではなく、オンラインで複数の Word 文書を 1 つの Word 文書に結合およびマージする便利なソリューションを提供します。 Python 開発者は、2 つの Word ドキュメントをオンラインで 1 つの Word ドキュメントに結合できます。この記事では、Python を使用して複数の Word ドキュメントを結合する方法を学習します。

この記事では次のトピックについて説明します。

Word ドキュメント結合 REST API – Python SDK

オンラインで Word ファイルを結合するには、GroupDocs.Merger Cloud の Python SDK API を使用します。 2 つ以上のファイルを 1 つの Word 文書に結合したり、1 つの文書から文書ページを抽出したりすることがサポートされています。オンラインの Word 差し込み印刷では、ページ全体または任意の範囲で、ページの向きを移動、削除、交換、回転、または縦または横に変更することもできます。この SDK は、Word、Excel、PowerPoint, Visio、OneNote、PDF、HTML などのすべての 一般的なドキュメント形式 の結合と分割をサポートします。

以下のコマンドを使用して、GroupDocs.Merger Python SDK をインストールし、オンラインで docx ファイルをマージします。

pip install groupdocs_merger_cloud

上記の手順に従う前に、ダッシュボード からクライアント ID とシークレットを取得してください。 ID とシークレットを取得したら、以下に示すようにコードを追加します。

# http://api.groupdocs.cloud から Python SDK を Python アプリケーションにインポートします
import groupdocs_merger_cloud

# 無料登録後、https://dashboard.groupdocs.cloud から client_id と client_secret を取得します。
client_id = "xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
client_secret = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

# ファイルAPI構成を取得する 
configuration = groupdocs_merger_cloud.Configuration(client_id, client_secret)
configuration.api_base_url = "https://api.groupdocs.cloud"
storage_name = "MyStorage"

REST APIを使用してPythonでWordファイルを結合する方法

Word ドキュメントをクラウド上でオンラインで結合するには、以下の簡単な手順に従います。

  1. Wordファイルをクラウドにアップロード
  2. Python を使用した Merge docx ファイル
  3. ダウンロード マージされた Word docx ファイル

Word ファイルをアップロードする

まず、以下のコード例を使用して、Word ファイルをクラウドにアップロードします。

# Word文書をクラウドストレージにアップロードする
# APIのインスタンスを作成する
file_api = groupdocs_merger_cloud.FileApi.from_config(configuration)
storage_api = groupdocs_merger_cloud.StorageApi.from_config(configuration)

# サンプルファイルをアップロードする
for filename in glob.iglob("H:\\groupdocs-cloud-data\\upload\\*.docx", recursive=True):
    destFile = filename.replace("H:\\groupdocs-cloud-data\\upload", "", 1)           
    # ファイルがすでに存在するかどうかを確認する
    fileExistsResponse = storage_api.object_exists(groupdocs_merger_cloud.ObjectExistsRequest(destFile))
    if not fileExistsResponse.exists:
        # アップロードファイルリクエストの作成
        request = groupdocs_merger_cloud.UploadFileRequest(destFile, filename)
        # ファイルをクラウドにアップロードする
        response = file_api.upload_file(request)
        print(response.uploaded)

その結果、アップロードされた Word ファイルは、クラウド上のダッシュボードの ファイル セクション で利用できるようになります。

Python を使用して複数の Word ファイルを結合する

以下の手順に従って、オンラインの Word ファイルをプログラムで 1 つのファイルに結合します。

  • DocumentApi のインスタンスを作成します。
  • JoinItem のインスタンスを作成する
  • FileInfo の最初の JoinItem の入力ファイル パスを指定します。
  • JoinItem の別のインスタンスを作成する
  • FileInfo の 2 番目の JoinItem の入力ファイル パスを指定します。
  • 3 つ以上のファイルを結合するための JoinItem を追加します。
  • JoinOptions のインスタンスを作成する
  • 作成された結合項目のカンマ区切りリストを追加します
  • 出力ファイルのパスを設定する
  • JoinOptions を使用して JoinRequest のインスタンスを作成する
  • 最後に、JoinRequest を使用して DocumentAPI の join() メソッドを呼び出してファイルを結合します。

次のコード スニペットは、Python を使用して Word ドキュメントをオンラインで 1 つに結合する方法を示しています。

# Python で Word Docx ファイルをマージする方法 
# 必要なAPIインスタンスを作成する
documentApi = groupdocs_merger_cloud.DocumentApi.from_config(configuration)

# 入力ソースファイル1
item1 = groupdocs_merger_cloud.JoinItem()
item1.file_info = groupdocs_merger_cloud.FileInfo("python-testing/word-one.docx")

# 入力ソースファイル2
item2 = groupdocs_merger_cloud.JoinItem()
item2.file_info = groupdocs_merger_cloud.FileInfo("python-testing/word-two.docx")

# 結合オプションを定義する
options = groupdocs_merger_cloud.JoinOptions()
options.join_items = [item1, item2]
options.output_path = "python-testing/joined-files.docx"

# 参加リクエストの作成
request = groupdocs_merger_cloud.JoinRequest(options)

# docx ファイルをマージする
result = documentApi.join(request)
print("Successfully merged Word Docx files: " + str(result))

結合されたファイルをダウンロードする

これで、Python を使用して Word 文書を結合し、書式設定を続ける方法がわかりました。次のコードサンプルを使用してダウンロードできます。

# 変換されたファイルをダウンロードするための API の初期化
import shutil
file_api = groupdocs_merger_cloud.FileApi.from_config(configuration)

# ダウンロードファイルリクエストの作成
request = groupdocs_merger_cloud.DownloadFileRequest("python-testing\\joined-files.docx", storage_name)

# 変換されたファイルをダウンロードする
response = file_api.download_file(request)

# ダウンロードしたファイルをディレクトリに移動します
shutil.move(response, "H:\\groupdocs-cloud-data\\")

Python で複数の Word ファイルの特定のページを結合する

次に、以下の手順に従って、複数の Word ファイルの特定のページをプログラムで 1 つのドキュメントに結合します。

  • DocumentApi のインスタンスを作成します。
  • JoinItem のインスタンスを作成する
  • FileInfo の最初の JoinItem の入力ファイル パスを指定します。
  • ページ番号のリストをカンマ区切りの配列で定義します
  • JoinItem の別のインスタンスを作成する
  • FileInfo の 2 番目の JoinItem の入力ファイル パスを指定します。
  • 開始ページ番号と終了ページ番号を定義する
  • ページ範囲モードを OddPages として定義します。
  • JoinOptions のインスタンスを作成する
  • 作成された結合項目のカンマ区切りリストを追加します
  • 出力ファイルのパスを設定する
  • JoinOptions を使用して JoinRequest のインスタンスを作成する
  • 最後に、JoinRequest を使用して DocumentAPI の join() メソッドを呼び出して Word ファイルを結合します。

次のコード スニペットは、Python の REST API を使用して Word ファイルの特定のページを 1 つのページにマージする方法を示しています。

# Python で複数の docx ファイルの特定のページをマージする方法
# API インスタンスの作成と初期化
documentApi = groupdocs_merger_cloud.DocumentApi.from_config(configuration)

# 入力ソースファイル1
item1 = groupdocs_merger_cloud.JoinItem()
item1.file_info = groupdocs_merger_cloud.FileInfo("python-testing/word-one.docx")
# 結合する特定のページのページ番号
item1.pages = [1,2]

# 入力ソースファイル2
item2 = groupdocs_merger_cloud.JoinItem()
item2.file_info = groupdocs_merger_cloud.FileInfo("python-testing/word-two.docx")
# 開始ページ番号
item2.start_page_number = 2
# 終了ページ番号
item2.end_page_number = 4
# ページ範囲モード
item2.range_mode = "OddPages"

# 結合オプションを定義する
options = groupdocs_merger_cloud.JoinOptions()
options.join_items = [item1, item2]
options.output_path = "python-testing/joined-pages.docx"

# 参加リクエストの作成
request = groupdocs_merger_cloud.JoinRequest(options)

# docx ファイルをマージする
result = documentApi.join(request)
print("Successfully merged Word pages: " + str(result))

Word 文書をオンラインで無料で結合

Word文書をオンラインで無料で結合するにはどうすればよいですか?上記APIを利用して開発されたオンラインで文書を無料で結合するには、以下をお試しください。

結論

このチュートリアルでは、次のことを学びました。

  • Python を使用してクラウド上で Word ドキュメントをオンラインで結合する方法。
  • マージされたドキュメント ファイルをプログラムでアップロードおよびダウンロードする方法。
  • Python で複数の Word ドキュメントのページをオンラインで単一のファイルに結合します。

さらに、ドキュメント を使用して、GroupDocs.Merger Cloud API について詳しく学ぶことができます。また、ブラウザーを通じて直接 API を視覚化し、通信できるようにする API リファレンス セクションも提供しています。さらに、GroupDocs.Merger Cloud SDK for Python ここに例があります を参照してください。

質問する

Word 文書の結合についてご不明な点がございましたら、無料サポート フォーラムまでお気軽にお問い合わせください。

関連項目