pdf-tools-suite / pdfpass.py
3a05chatgpt's picture
Upload 8 files
5d01bda verified
raw
history blame
614 Bytes
from pypdf import PdfReader, PdfWriter
from io import BytesIO
def 移除_pdf密碼(pdf檔案, 密碼):
"""
解鎖帶有密碼保護的 PDF 檔案,回傳已解鎖的檔案(BytesIO)或錯誤訊息
"""
try:
reader = PdfReader(pdf檔案)
if reader.is_encrypted:
reader.decrypt(密碼)
writer = PdfWriter()
for page in reader.pages:
writer.add_page(page)
output = BytesIO()
writer.write(output)
output.seek(0)
return output
except Exception as e:
return f"解鎖失敗:{e}"