見出し画像

Pythonで複数のPDFファイルを結合する方法(GoogleColab)

今回は、Python(GoogleColab)でPDFの結合を行います。これもツールはいくつかありますが、Pythonを使って一気にやりたいこともあると思うので、参考になれば幸いです。

実装の目標

今回は、複数のPDFを用意し、それぞ順番に繋げて1つのPDFとすることを目標とします。
pdf1.pdf、pdf2.pdf、pdf3.pdfという3つのpdfファイルを用意し、これらをcombined.pdfとして出力させます。
※2つを結合するなど、ファイル数を変えることもできるようにします。

実装の目標

コードの各部分の解説

①PDF結合関数の定義

def combine_pdfs(pdf_list, output_filename):


combine_pdfsという関数を定義します。
この関数は、結合するPDFファイルのリスト(pdf_list)と、結合後のPDFファイルの名前(output_filename)を引数として受け取ります。

②新しいPDFファイルの作成

combined_pdf = fitz.open()

結合するための新しいPDFファイル(combined_pdf)を作成しています。このファイルに、結合するPDFを追加します。

③PDF結合のためのループ

for pdf_file in pdf_list:
    with fitz.open(pdf_file) as pdf:


指定されたPDFファイルのリスト(pdf_list)をループで処理させます。
各PDFファイルはfitz.openを使用して開かれ、後続の処理のためにpdf変数に格納されます。

④各PDFファイルからページの追加

combined_pdf.insert_pdf(pdf)

現在開いているPDFファイル(pdf)から、全ページを新しく作成したPDFファイル(combined_pdf)に追加しています。

⑤結合したPDFの保存とクローズ

combined_pdf.save(output_filename)
combined_pdf.close()

結合されたPDFファイルを指定されたファイル名(output_filename)で保存し、その後PDFファイルを閉じます。

⑥関数の使用例

combine_pdfs(['pdf1.pdf', 'pdf2.pdf', 'pdf3.pdf'], 'combined.pdf')

combine_pdfs関数を使用します。
例として'pdf1.pdf', 'pdf2.pdf', 'pdf3.pdf'というファイルを結合し、'combined.pdf'として保存する処理を行っています。
※ここのリスト[]の数を変更すれば結合するファイルを変更できます。


コード全体

ここまでをまとめるとコード全体は以下のようになります。

ここから先は

842字

¥ 120

期間限定 PayPay支払いすると抽選でお得に!

この記事が気に入ったらサポートをしてみませんか?