首先我們先來桌面創建一個文件
我們創建了一個名為q的txt文件然后我們將它壓縮,壓縮的時候記得設置上密碼
我這邊將密碼設置為123456, 接下來我們打開我們的編寫工具,開始寫代碼,我這里用的是pycharm,推薦大家使用
這里我們將使用到python的zipfile的模塊,編寫zip文件口令破解機要從學習 zipfile庫的使用方法著手。打開 Python解釋器,我們
用help( zipfile)命令進一步了解這個庫,并重點看一下 Zip File類中的 extractall方法。這個類和這個方法對我們編程破解有口令保護的Zip文件是很有用的。請注意 extractant(方法用可選參數指定密碼的方式
編寫一個腳本來測試一下zip文件庫的用法。導入庫后,用帶有口令保護的Zip文件的文件名,實例化一個新的 Zipfile類。要解壓這個Zip文件,我們使用 extractall方法,并在可選參數pwd上填入口令。
創建一個.py文件,在根目錄然后在將我們的壓縮文件放入同目錄里面,項目結構目錄
我們.py文件的代碼:
import zipfile zipFile = zipfile.ZipFile("q.zip","r")//這里是我們的壓縮文件 zipFile.extractall(pwd="123456")//這里是我們的密碼
這段代碼其實就是拿著密碼去解壓我們剛剛壓縮的文件,網上大多數教程都是這樣寫的,但是我這邊使用python3.6就會發現運行的時候報錯了
反正錯誤大概的意思就是pwd的接收的數據應該是bytes類型但是它得到的卻是str類型的反正就是類型錯了,那我們就將密碼轉換為bytes類型,我們的py文件的代碼如下:
import zipfile zipFile = zipfile.ZipFile("q.zip","r") password = '123456' zipFile.extractall(pwd=str.encode(password) )
這時候我們再次運行項目
這次沒有報錯
我們可以看到在我們的項目根目錄下多了一個文件就是我們之前壓縮的那個文件
想了解更多zipfile的小伙伴可以點擊這里點擊打開鏈接
接下來我們繼續改造,如果用一個錯誤密碼執行這個腳本會發生什么情況?讓我們在腳本中增加一些捕獲和處理異常的代碼,顯示錯誤的信息。
新聞熱點
疑難解答