zoukankan      html  css  js  c++  java
  • 办公自动化6_批量给pdf文件加密

    ############## 实例6_批量给pdf文件加密.py ###############

    来源网上整理 ,供学习使用。

    import PyPDF2 #可从PDF文档提取信息
    import os #用于获取需要合并的PDF文件所在路径
    path="data/" # 文件夹路径

    1.获取需要加密的文件名及路径

    files=[]
    for file in os.listdir(path):
    if file.endswith(".pdf"): #排除文件夹内的其它干扰文件,只获取PDF文件
    files.append(path+file)

    2.获取每个PDF文件并加密保存

    for file in files:
    pdf_obj=open(file,'rb')# 以二进制读取,将保留PDF中的所有信息
    pdf_reader=PyPDF2.PdfFileReader(pdf_obj)
    pdf_writer=PyPDF2.PdfFileWriter()
    for page_num in range(pdf_reader.numPages):
    page_obj=pdf_reader.getPage(page_num)
    pdf_writer.addPage(page_obj)
    pdf_writer.encrypt('pass')# 加密,密码设为'pass',可个性化调整
    #写入并保存PDF文件
    pdf_output_file=open(file.split(".")[0]+"_sec.pdf",'wb') #以二进制写入,将保留源PDF中的所有信息
    ## 将字符串'data/INV5.pdf'按点号"."分成两部分 file.split(".")
    pdf_writer.write(pdf_output_file)
    pdf_output_file.close()

    files

    print("succed")
    ################## end ########################

    因为不懂,所以要学; 因为平凡,所以努力。 因为有为,所以有位。 因为执着,所以精彩。
  • 相关阅读:
    【设计模式】- 责任链篇
    【工具】
    【日常摘要】- 生成随机的姓名或手机号篇
    排序算法的时空复杂度、稳定性分析
    链表插入排序、链表归并排序
    图的存储结构
    二叉平衡树的插入和删除操作
    二叉排序树的查找、插入和删除
    哈希表
    堆的插入、删除和建立操作,堆排序
  • 原文地址:https://www.cnblogs.com/quezesheng/p/13287067.html
Copyright © 2011-2022 走看看