2019/09/03Pythonで簡単にPDFを分割する前回Pythonを使ってPDFの結合を行いました。PDFの結合よりも需要が少ないかもしれませんが、Pythonを利用すればPDF分割も簡単に行うことができます。作成するPythonコードはたったの12行です。入門者でもわかるように1行、1行説明を行っています。Pythonランチャーを使うPyPDF2パッケージのインストールWindows10を動作確認を行っています。PythonでPDFの分割や結合を行うためには、Pythonの標準ライブラリには含まれていないPyPDF2パッケージをインストールする必要があります。インストールはパッケージ管理のpipを利用して行います。listコマンドを利用するとインストールが正常に行われているか確認することができます。test-2.pdf...というようにページ毎にPDFファイルを作成します。コードは下記の通りです。#(12)1行毎に説明を行っていきます。#(1)では、PDFのファイル名を取得するためにglob、取得したファイル名をファイルの名前と拡張子にわけるためにosをimportしています。#(2)PDFを読み込むためにPdfFileReader、分割したPDFファイルを作成するためにPdfFileWriterを利用するため、importしています。#(3)でglobを使ってファイル名を取得していてます。#(4)os.path.splitextでファイル名と名前と拡張子を個別に取り出しています。#(5)PdfFileReaderを使ってファイルの中身を取得しています。#(6)PdfFileReaderのgetNumPagesメソッドでPDFファイルに含まれるPDFのページ数を取得しています。#(7)getPageメソッドにページ数を指定することでそのページのPDFの内容を取り出しています。#(8)分割する際に作成されるファイル名のルールを決めています。ファイル名-ページ番号.pdfで作成されます。test.pdfで分割するとtest-1.pdfが作成されます。#(9)PdfFileWriterをインスタンス化して変数pdf_file_writerに入れています#(10)openメソッドのwbモード(write,binary)でファイルをオープンしています。ファイル名は#(8)で設定されたものです。#(11)PdfFileWriterのaddPageメソッドを使用して、pdf_file_writerに#(7)で取り出したPDFの中身を追加しています。#(12)openしたファイルに#(11)で追加したPDFの中身を書き込んでいます。test.pdfというファイルが存在し、2枚のページで構成されている場合は、pyファイルが存在するフォルダに保存して、実行するとtest-1.pdfとtest-2.pdfファイルが作成されます。Pythonランチャーを使うWindowsではpyファイルがPythonランチャーに関連付けられていればファイル名をダブルクリックするだけでプログラムを実行することができます。ファイルを右クリックするとpyファイルに関連付いているアプリケーションがわかるので確認を行ってください。ロケットのアイコンが特徴です。関連付けられていればダブルクリックするだけで結合のプログラムが実行されます。Pythonランチャーを使う。