PythonでPDF処理をする際、PyPDF2は有用なライブラリの1つです。この記事では、PyPDF2を使用して、PDFファイルをパスワード保護する方法について詳しく説明します。また、特定のフォルダ内全てのファイルにパスワード保護をかける方法も紹介します。以下は、実際にPyPDF2を使用してPDFファイルをパスワード保護する方法の手順です。
PyPDF2をインストールする
最初に、PyPDF2ライブラリをインストールする必要があります。ターミナルまたはコマンドプロンプトで、以下のコマンドを実行してください。
pip install PyPDF2
PDFファイルを開く
次に、保護するPDFファイルを開きます。以下のコードを使用して、PDFファイルを開きます。 この例では'example.pdf'というファイルを開きます。
import PyPDF2 # ファイルを開く pdf_file = open('example.pdf', 'rb') # PDFリーダーオブジェクトを作成する pdf_reader = PyPDF2.PdfFileReader(pdf_file)
パスワードを設定する
次に、PDFファイルに設定するパスワードを決定します。以下のコードを使用して、パスワードを設定します。 ここでは'mypassword'というパスワードを設定します。
# パスワードを設定する password = 'mypassword'
PDFファイルを保護する
最後に、PDFファイルを保護するために、以下のコードを使用します。
# PDFライターオブジェクトを作成する pdf_writer = PyPDF2.PdfFileWriter() # ページを追加する for page_num in range(pdf_reader.numPages): pdf_writer.addPage(pdf_reader.getPage(page_num)) # PDFファイルを保護する pdf_writer.encrypt(user_pwd=password, owner_pwd=None, use_128bit=True) # 保護されたPDFファイルを保存する result_pdf = open('example_protected.pdf', 'wb') pdf_writer.write(result_pdf) result_pdf.close() # 元のPDFファイルを閉じる pdf_file.close()
特定のフォルダの全てのファイルをパスワード保護する
Pythonを使用して、指定したフォルダ内のすべてのPDFファイルにパスワードを設定することができます。osモジュールを利用して指定したフォルダ内のすべてのPDFファイルを検索する必要があります。以下のコードを使用して、指定したフォルダ内のPDFファイルを検索します。下記は指定したフォルダ内の全てのPDFにパスワード設定するコードです。
import os import PyPDF2 # フォルダパスを指定する folder_path = '/path/to/folder' # フォルダ内のPDFファイルを検索する pdf_files = [] for filename in os.listdir(folder_path): if filename.endswith('.pdf'): pdf_files.append(os.path.join(folder_path, filename)) # パスワードを設定する password = 'mypassword' # 各PDFファイルを保護する for pdf_file in pdf_files: # PDFファイルを開く pdf_file_obj = open(pdf_file, 'rb') pdf_reader = PyPDF2.PdfFileReader(pdf_file_obj) # PDFライターオブジェクトを作成する pdf_writer = PyPDF2.PdfFileWriter() # ページを追加する for page_num in range(pdf_reader.numPages): pdf_writer.addPage(pdf_reader.getPage(page_num)) # PDFファイルを保護する pdf_writer.encrypt(user_pwd=password, owner_pwd=None, use_128bit=True) # 保護されたPDFファイルを保存する result_pdf = open(pdf_file, 'wb') pdf_writer.write(result_pdf) result_pdf.close() # 元のPDFファイルを閉じる pdf_file_obj.close()
以上が、指定したフォルダ内のすべてのPDFファイルにパスワードを設定する方法の手順です。このコードを使用することで、大量のPDFファイルを一括して保護することができます。
まとめ
PyPDF2を使用してPDFファイルをパスワード保護する方法を紹介しました。PyPDF2を使用すると、簡単かつ迅速にPDFファイルを保護できます。これらのプログラムはPythonの基本的な文法とライブラリで実装することができます。Pythonの基礎学習には下記のようなサイトの利用が有効です。