個人情報満載のPDFが見つかり、パスワードをかけておいた方がいいかなと思いたつ。Adobeのアクロバットを買えばいいのだろうけれど、そしてフリーのソフトもあるのだろうけれど、せっかくだからPyPDF2を使ってかけてみる。
PDF_pw.py
import PyPDF2
src_pdf = PyPDF2.PdfFileReader('./**パスワードをかけたいPDF**.pdf')
pass_pdf = './**パスワードをかけた後の出力先**.pdf'
password = '**任意のPassword**'
dst_pdf = PyPDF2.PdfFileWriter()
dst_pdf.cloneReaderDocumentRoot(src_pdf)
d = {key: src_pdf.documentInfo[key] for key in src_pdf.documentInfo.keys()}
dst_pdf.addMetadata(d)
dst_pdf.encrypt(password)
with open(pass_pdf, 'wb') as f:
dst_pdf.write(f)
生成までちょっと間がある印象。パスワードをかけたいPDFとパスワードをかけた後の出力先を同一にすると、上書きされる。でも、なんか失敗してPasswordもわかんないみたいな最悪の事態になるのは嫌だから、別にした方がいいと思う。