見出し画像

PythonでPDFファイルをマージする方法

複数のPDFファイルを一つにまとめたい時ってありますよね。
Pythonのライブラリを使用すると簡単に差し込みができます。ここでは、`PyPDF2`というライブラリを使用して、複数のPDFファイルを一つのPDFにマージする方法を紹介します。

初期設定

まず、`PyPDF2`ライブラリをインストールする必要があります。以下のコマンドを使用してインストールしてください。

pip install PyPDF2

PDFファイルのマージコード

以下のPythonコードを使用して、複数のPDFファイルを一つにマージします。

import PyPDF2
import os

def merge_pdfs(pdf_list, output_path):
    """
    複数のPDFファイルを一つのPDFファイルにマージします。

    Parameters:
    pdf_list (list of str): マージするPDFファイルのパスのリスト。
    output_path (str): マージ後のPDFファイルの出力パス。
    """
    pdf_merger = PyPDF2.PdfMerger()

    for pdf in pdf_list:
        if os.path.exists(pdf):
            pdf_merger.append(pdf)
        else:
            print(f"File not found: {pdf}")

    with open(output_path, 'wb') as output_pdf:
        pdf_merger.write(output_pdf)

    print(f"Merged PDF saved to: {output_path}")

# 使用例
pdf_files = ["example1.pdf", "example2.pdf", "example3.pdf"]
output_file = "merged_output.pdf"
merge_pdfs(pdf_files, output_file)

説明

このコードでは、`merge_pdfs`という関数を定義しています。この関数は、以下の引数を取ります:

  • `pdf_list`: マージするPDFファイルのパスのリスト

  • `output_path`: マージ後のPDFファイルの出力パス

関数内部では、まず`PyPDF2.PdfMerger`オブジェクトを作成し、リスト内の各PDFファイルが存在するかどうかをチェックします。ファイルが存在する場合、`pdf_merger.append(pdf)`を使用してPDFファイルをマージします。最後に、`output_path`にマージされたPDFファイルを保存します。

使用例

pdf_files = ["example1.pdf", "example2.pdf", "example3.pdf"]
output_file = "merged_output.pdf"
merge_pdfs(pdf_files, output_file)

上記のコードを実行すると、`example1.pdf`、`example2.pdf`、`example3.pdf`が`merged_output.pdf`として一つにマージされます。

まとめ

Pythonと`PyPDF2`を使用することで、簡単に複数のPDFファイルを一つにマージすることができます。ぜひ試してみてください。