好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > python 實現批量文件加密功能

python 實現批量文件加密功能

熱門標簽:地圖標注與注銷 南昌地圖標注 電梯新時達系統外呼顯示e 百應電話機器人總部 宿州電話機器人哪家好 旅游廁所地圖標注怎么弄 西青語音電銷機器人哪家好 無錫智能外呼系統好用嗎 成都呼叫中心外呼系統哪家強

一、源碼

1、結果展示

  python自動化辦公現在可不是一個陌生的詞,也隨著人們對自己隱私越來越看重,就會出現這樣的需求:每人一個PDF文件,因有個人隱私信息,所以需要對文件進行加密且密碼為本人身份證后六位。
  廢話不多說,上結論,程序運行結果如下:


  我們去一探究竟,原文件如下:

 獲取密碼如下:


  將文件加密以后結果如下:


  我們隨機打開一個驗證一下:


  輸入身份證后六位,作為密碼即可打開。

2、源碼

  可運行源碼如下:

import os
from PyPDF2 import PdfFileWriter, PdfFileReader
import pandas as pd

# 全局工作目錄
os.chdir("D:\加密")

def main():
    # 1、找文件
    # 獲取實習證明原文件的文件名
    rosterfile = os.listdir('.\原文件\\')
    # 獲取信息中表的姓名與密碼
    name,Password = getPassword()

    # 對每個文件進行加密并保存
    for prove in rosterfile:
        for Name in name:
            if Name in prove:
                i = name.index(Name)
                rosterLast = prove
                rosterNow = '.\文件加密版本\\' + prove
                password = Password[i]
                # 2、加密文件并輸出
                encryptionPDF(rosterLast,rosterNow,password)


# 獲取了表中姓名信息,并提取身份證后六位作為密碼
def getPassword():
    password = []
    name = []
    # 獲取Excel列,包括姓名、身份證號
    Name = pd.read_excel('.\名單.xlsx', usecols=[0],names=None)  # 讀取項目名稱列,不要列名
    Id = pd.read_excel('.\名單.xlsx', usecols=[1],names=None)  # 讀取項目名稱列,不要列名
    Name1 = Name.values.tolist()
    id = Id.values.tolist()
    # 提取身份證后六位作為密碼
    for i in id:
        password.append(str(i[0])[12:18:1])
    # 提取姓名為字符串,原來為list
    for j in Name1:
        name.append(j[0])
    return name,password

# 加密文件并輸出
# 變量說明:rosterLast-原PDF文件路徑,rosterNow-加密后輸出路徑,password-加密密碼
def encryptionPDF(rosterLast,rosterNow,password):
    pdf_reader = PdfFileReader(r'.\原文件\\%s'%(rosterLast))  # 輸入你想要操作的pdf文檔的位置/名稱
    pdf_writer = PdfFileWriter()

    for page in range(pdf_reader.getNumPages()):
        pdf_writer.addPage(pdf_reader.getPage(page))

    pdf_writer.encrypt(password)  # 寫入密碼并輸出到目的路徑
    with open(rosterNow, 'wb') as out:
        pdf_writer.write(out)
    print("文件:%s----已完成加密,密碼為:%s"%(rosterLast,password))

# 函數入口
if __name__ == '__main__':
    print("-----開始加密-----")
    main()
    print("-----加密完成-----")

二、源碼注釋

1、所使用依賴包

  共使用三個函數:

# 文件操作
import os

# 操作PDF文件
from PyPDF2 import PdfFileWriter, PdfFileReader

# 操作數據
import pandas as pd

  在這里我只是簡單說明用這些第三方庫干了什么,具體學習可參考官方文檔或者菜鳥教程。

2、函數功能

  編碼過程中也共定義有三個函數,其功能如下:

# 主函數,從這里我們可以看到我整體是如何實現此需求的
def main():

# 功能函數,用來獲取文件密碼的,然后使用姓名與文件名做匹配,達到本人文件為本人身份證后六位的需求。
def getPassword():

#  功能函數,本次編碼的核心,前面都可以作為準備階段,就是為本函數用來加密文件而提供讀取、輸出路徑以及密碼的。
def encryptionPDF(rosterLast,rosterNow,password):

3、代碼拓展

  這只是一個很簡單的需求,它并不具有普遍性,它可能僅在我電腦上可以運行,當你拷貝走源碼以后可能就沒法運行了,會報各種各樣的錯誤。
  如果你想直接用,那可能得按照我在編碼過程中準備的數據一模一樣的去準備。所以它其實只能用作學習交流,想要直接使用不太現實。
  當然可以嘗試著在此基礎上增加功能或者增加代碼的可用性與門檻。例如:獲取用戶輸入的路徑,定義密碼模板等,讓代碼具有普遍性,可直接拷貝運行那種的。

三、可運行環境

  那如果你不想改源碼,想直接用那怎么辦?
  沒問題!那你就跟著我來吧,一點一點來。
  首先在D盤創建一個文件夾名為:加密;注意!必須保證它在根目錄下!它的路徑為D:\加密。然后打開文件創建如下:必須一模一樣


  差不多了,原文件放在原文件夾里面,運行以后的文件就在加密版本文件夾里面。
  最重要的就是在名單的表格里面把信息填好,這就是用來設置密碼的,表格格式如下:身份證號碼格式為數字


  表格只有兩列!一列姓名、一列身份證號碼。身份證號碼為數字類型!

到此這篇關于python 實現批量文件加密功能的文章就介紹到這了,更多相關python 批量文件加密內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • python破解zip加密文件的方法
  • 基于python實現文件加密功能
  • python暴力解壓rar加密文件過程詳解
  • python實現文件快照加密保護的方法
  • Python編譯成.so文件進行加密后調用的實現
  • Python 實現加密過的PDF文件轉WORD格式
  • python中的socket實現ftp客戶端和服務器收發文件及md5加密文件

標簽:七臺河 辛集 渭南 贛州 濰坊 西安 雅安 許昌

巨人網絡通訊聲明:本文標題《python 實現批量文件加密功能》,本文關鍵詞  python,實現,批量,文件,加密,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《python 實現批量文件加密功能》相關的同類信息!
  • 本頁收集關于python 實現批量文件加密功能的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 狠狠色丁香婷婷亚洲综合小说| 蜜桃狠狠色伊人亚洲综合网站| 美女的胸又大又www的网站| 美女扒开男生吃j免费视频| 91麻豆精品国产91久久久ios版| 胸前两个小兔子又立起来了| 18台湾无套男gay| 亚洲国产精品无码久久久秋霞99 | 亚洲精品久久久久久久久久吃药 | 又硬又粗又黄又爽又大又紧| 曰本一级毛片免费| 上流社会韩剧免费观看完整版 | 美女扒开腿| 家庭教师波多野吉衣| 国産精品久久久久久久反绑调教| tube18动漫anime日本教师| 香蕉视频一区二区三区| 久久99热人妻偷产国产| jzzz日本| 大j8黑人bbbw巨大j888| 2022国产午夜无码精品免费看| 甜性涩爱韩国HD未删| 乱子伦xxxx厨房| 欧美日韩免费在线视频| 女人把秘?扒开给男人看视频真人| 肉视频在线观看| 高清成年美女xx免费网站黄 | 欧美亚洲精品suv| 小莹的乳液计小说全文| 亚洲国产人成中文幕一级二级| xvideos最新亚洲入口| 边吸奶边扎下面| 欧美最猛做爰777777| 夜夜爽AV福利精品导航| 国精产品9AA| 91xxxxx| 爽到无码高潮喷水aV无码网站| nba98八度免费版| 久草视频| 男人的j桶女人免费网站| 无码人妻AⅤ一区二区三区鲁大师|