欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python編程批量實(shí)現(xiàn)md5加密pdf文件

 更新時(shí)間:2022年04月27日 09:53:42   作者:Bruce_Liuxiaowei  
這篇文章主要介紹了Python編程批量實(shí)現(xiàn)md5加密pdf文件,文章基于python的相關(guān)資料展開詳細(xì)內(nèi)容介紹,具有一定的參考價(jià)值需要的小伙伴可以參考一下

Python編程實(shí)現(xiàn)批量md5加密pdf文件
今天在某公眾號(hào)看到一個(gè)關(guān)于pdf文件加密模塊的介紹,突然有了一個(gè)想法,編寫一個(gè)批量加密某目錄下的所有pdf文件。結(jié)合md5加密和文件查找等知識(shí),實(shí)現(xiàn)這個(gè)想法。

運(yùn)行環(huán)境:

OS:macOS Monterey Version 12.3.1(英文版)

IDE:PyCharm 2020.1

代碼分享如下:

# 文件 ? ? ?:pdf加密.py
# IDE ? ? ?:PyCharm

# 導(dǎo)入加密模塊
import pikepdf
# 導(dǎo)入操作模塊
import os
# 導(dǎo)入md5加密模塊
from hashlib import md5
# 此模塊實(shí)現(xiàn)輸入密碼不顯示
import getpass

# 搜索pdf文件,加密
def search_pdf(path, passwrd, username):
? ? for pdfFile in os.listdir(path):
? ? ? ? pdfPath = os.path.join(path, pdfFile)
? ? ? ? if os.path.isdir(pdfPath):
? ? ? ? ? ? search_pdf(pdfPath, passwrd, username)

? ? ? ? elif '.pdf' in pdfPath:

? ? ? ? ? ? encry_pdf(pdfPath, encrypt_md5(passwrd), username)
? ? ? ? ? ? print(f'{pdfPath}已經(jīng)加密?。∶艽a保存好?。?!')


# 加密函數(shù)
def encrypt_md5(passwrd_str):
? ? new_md5 = md5() ? # 創(chuàng)建md5對象
? ? new_md5.update(passwrd_str.encode(encoding='utf-8'))
? ? # 返回信息摘要
? ? return ?new_md5.hexdigest()


# 加密函數(shù),參數(shù)為pdf文件名,密碼
def encry_pdf(pdfname, passwrd, username):
? ? # 打開被加密的文件,允許覆蓋
? ? pdf = pikepdf.open(pdfname, allow_overwriting_input=True)
? ? # 保存加密文件
? ? pdf.save(pdfname, encryption=pikepdf.Encryption(owner=passwrd,user=username, R=4))

# 主函數(shù)
if __name__ == '__main__':
? ? Done = True
? ? path = input('請輸入文件所在目錄:')
? ? while Done:
? ? ? ? try:
? ? ? ? ? ? passwrd1 = getpass.getpass("請輸入加密文件的密碼:", stream=None)
? ? ? ? ? ? passwrd2 = getpass.getpass("請?jiān)俅屋斎爰用芪募拿艽a:", stream=None)
? ? ? ? ? ? if passwrd1 == passwrd2:
? ? ? ? ? ? ? ? username1 = input('請輸入用戶名:')
? ? ? ? ? ? ? ? search_pdf(path, passwrd1, username1)
? ? ? ? ? ? ? ? Done = False
? ? ? ? ? ? ? ? break
? ? ? ? ? ? else:
? ? ? ? ? ? ? ? print('密碼輸入有誤?。。?)
? ? ? ? except:
? ? ? ? ? ? print('請核實(shí)信息??!')

運(yùn)行結(jié)果如下:

zsh: suspended  sudo python pdf加密.py
(venv) (base) liuxiaowei@MacBookAir 10個(gè)有趣的Python高級(jí)腳本 % sudo python pdf加密.py
請輸入文件所在目錄:/Users/liuxiaowei/Desktop
請輸入加密文件的密碼:
請?jiān)俅屋斎爰用芪募拿艽a:
密碼輸入有誤?。?!              # 密碼輸入有誤
請輸入加密文件的密碼:
請?jiān)俅屋斎爰用芪募拿艽a:  
密碼輸入有誤?。?!
請輸入加密文件的密碼:      
請?jiān)俅屋斎爰用芪募拿艽a:   # 密碼輸入正確
請輸入用戶名:lxw
/Users/liuxiaowei/Desktop/sql注入.pdf已經(jīng)加密??!密碼保存好!?。?# 當(dāng)前目錄下的pdf文件
/Users/liuxiaowei/Desktop/TS852D Specification.pdf已經(jīng)加密?。∶艽a保存好?。?!
/Users/liuxiaowei/Desktop/md學(xué)習(xí)筆記/pdf/Windows PE權(quán)威指南.pdf已經(jīng)加密??!密碼保存好?。?! # 子目錄下的pdf文件
/Users/liuxiaowei/Desktop/md學(xué)習(xí)筆記/pdf/PythonCodingRule.pdf已經(jīng)加密??!密碼保存好!?。?br />/Users/liuxiaowei/Desktop/精通黑客免殺完整版.pdf已經(jīng)加密??!密碼保存好??!!

到此這篇關(guān)于Python編程批量實(shí)現(xiàn)md5加密pdf文件的文章就介紹到這了,更多相關(guān)Python加密pdf文件內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論