pdf 移除密码

pdf 移除密码

#pdf的读取方法
from PyPDF2 import PdfReader
#pdf的写入方法
from PyPDF2 import PdfWriter

def
deception_pdf2() : # 获取指定目录下的所有文件和目录 directory = "E:xxxxxxxxxxxxxxx" all_files = os.listdir(directory) # 过滤出所有 PDF 文件 pdf_files = [f for f in all_files if f.lower().endswith('.pdf')] # 返回 PDF 文件的完整路径 pdf_files_paths = [os.path.join(directory, f) for f in pdf_files] for pdf_files in pdf_files_paths: try: pdf_reader = get_reader(pdf_files) if pdf_reader is None: return print("无内容读取") # 如果使用python2需要将is_encrypted改为isEncrypted elif not pdf_reader.is_encrypted: return print('文件没有被加密,无需操作') # 如果使用的是python2需要将PdfWriter改为PdfFileWriter pdf_writer = PdfWriter() # 如果使用的是python2需要将将append_pages_from_reader改为appendPagesFromReader pdf_writer.append_pages_from_reader(pdf_reader) # 创建解密后的pdf文件和展示文件的路径 pdf_files = pdf_files.replace("E:/医学数据/医学期刊/医学数据/", 'E:/医学数据/医学期刊/2/') decrypted_filename = "".join(pdf_files.split('.')[:-1]) + '_' + '已解密' + '.pdf' print("解密文件已生成:{}".format(decrypted_filename)) # 写入新文件 pdf_writer.write(open(decrypted_filename, 'wb')) except Exception as err: print("文件设置了打开密码,无法读取PDF,请尝试选择字典库进行爆破") thread_staus.set_state(False) if __name__ == "__main__": deception_pdf2()

 

posted @ 2024-10-27 23:12  淋哥  阅读(7)  评论(0编辑  收藏  举报