Python 加密PDF赢得';无法写入磁盘

Python 加密PDF赢得';无法写入磁盘,python,python-3.x,pypdf2,Python,Python 3.x,Pypdf2,我有一些加密pdf的代码,出于某种原因,一旦我加密pdf,书写就会挂起。如果我把pdf\u writer.encrypt(password)注释掉,就没有问题了,而且写得很好。我尝试过以最高权限运行脚本并修改文件夹选项,但可能缺少一些简单的东西 with open(filename, 'rb') as pdf_file: pdf_reader = PyPDF2.PdfFileReader(pdf_file) pdf_writer = PyPDF2.PdfFileWriter()

我有一些加密pdf的代码,出于某种原因,一旦我加密pdf,书写就会挂起。如果我把
pdf\u writer.encrypt(password)
注释掉,就没有问题了,而且写得很好。我尝试过以最高权限运行脚本并修改文件夹选项,但可能缺少一些简单的东西

with open(filename, 'rb') as pdf_file:
    pdf_reader = PyPDF2.PdfFileReader(pdf_file)
    pdf_writer = PyPDF2.PdfFileWriter()

    for page_number in range(pdf_reader.numPages):
        pdf_writer.addPage(pdf_reader.getPage(page_number))

    pdf_writer.encrypt(password)
    filename_encrypted = filename.parents[0] / f "{filename.stem}_encrypted.pdf"

    with open(filename_encrypted, 'wb') as pdf_file_encrypted:
        pdf_writer.write(pdf_file_encrypted)

任何帮助都将不胜感激

我不明白为什么PyPDF2不能正常工作,所以我尝试了另一个名为pikepdf的模块,结果一切正常。不管怎么说,这似乎是一个比PyPDF2好得多的模块

import pikepdf


filename = pathlib.Path(r"path\to\pdf\test.pdf")
password = 'password'

with Pdf.open(filename) as pdf:
    filename_encrypted = filename.parents[0] / f"{filename.stem}_encrypted.pdf"
    pdf.save(filename_encrypted, encryption=Encryption(user=password, owner=password))

我不明白为什么PyPDF2不能正常工作,所以我尝试了另一个名为pikepdf的模块,结果一切正常。不管怎么说,这似乎是一个比PyPDF2好得多的模块

import pikepdf


filename = pathlib.Path(r"path\to\pdf\test.pdf")
password = 'password'

with Pdf.open(filename) as pdf:
    filename_encrypted = filename.parents[0] / f"{filename.stem}_encrypted.pdf"
    pdf.save(filename_encrypted, encryption=Encryption(user=password, owner=password))