トップ 履歴 一覧 Farm ソース 検索 ヘルプ PDF RSS ログイン

PythonPDFexe

*disclaimer
1196858

[Python]

PythonPDFexe

Copilotに聞いてみる

Python言語で、複数のPDFファイルを、ファイル名のアルファベット順に結合して、一つのPDFファイルにするスクリプトを書いてください。そして、そのスクリプトをwindows 上で実行できるexeファイルにコンパイルする方法を教えてください。


Copilotの回答のスクリプト

import glob
from PyPDF2 import PdfMerger

merge = PdfMerger()
for filename in sorted(glob.glob('*.pdf')):
    merge.append(filename)
    print(filename)

merge.write('merge.pdf')
merge.close()

このスクリプトは、カレントディレクトリ内のすべてのPDFファイルを結合し、merge.pdfというファイル名で出力します。スクリプトを実行するには、次のコマンドを使用してください。

python3 merge.py


  • 注意:スクリプトファイルの文字コードは UTF-8 にしておくこと。

修正

  • Runしたらエラーが出たので、エラーをググると、
  • PyPDF2はもう古いそうなので、新しいものをインストール
pipでpypdfをインストールします。

pip install pypdf

  • それに伴い、PdfMergerは古くなったので、PdfWriterを使う

  • 出来上がったPDFが同じディレクトリーにあると困るので、外に保存するように修正(一つ上のディレクトリ)

上の修正を施して(by杉浦)動くスクリプトが出来上がり

import glob
from pypdf import PdfWriter

merge = PdfWriter()
for filename in sorted(glob.glob('*.pdf')):

   merge.append(filename)
   print(filename)


merge.write('../merge.pdf')
merge.close()



Copilotの回答(つづき)


このスクリプトをWindows上で実行できるexeファイルにコンパイルする方法について説明します。Pythonスクリプトをexeファイルに変換するために、pyinstallerというツールを使用します。以下の手順で進めてみてください。

まず、pyinstallerをインストールします。コマンドプロンプトまたはターミナルで次のコマンドを実行してください。
pip install pyinstaller

次に、Pythonスクリプトをexeファイルに変換します。コマンドプロンプトまたはターミナルでスクリプトがあるディレクトリに移動し、次のコマンドを実行してください。
pyinstaller --onefile merge.py
これにより、distディレクトリ内にmerge.exeという実行可能ファイルが生成されます。
merge.exeをダブルクリックして実行してみてください。スクリプトが正常に実行され、merge.pdfが生成されるはずです。
以上の手順で、PythonスクリプトをWindows上で実行可能なexeファイルに変換できます。



ほぅ、出来上がり!

exeファイルですが、ここに貼り付けておきますね。
PPDF.exe(215)

使い方

  1. PPDF.exeをダウンロードする
  2. まとめたいPDFファイルを入れたフォルダーの中にPPDF.exeをコピーする
  3. そのフォルダー内で、PPDF.exeをダブルクリックするだけ
  4. そのフォルダーの外に merge.pdfというPDFファイルが出来上がり。

 References

https://qiita.com/persim/items/2de431bb345df3f2c196
https://qiita.com/iceblue/items/5a584591bc13f4540366
https://www.yutaka-note.com/entry/pypdf