Python實現(xiàn)加密的RAR文件解壓的方法(密碼已知)
博主之前在網(wǎng)上找了很多資料,發(fā)現(xiàn)rarfile庫不能直接調(diào)用,需要安裝unrar模塊,下面將詳細介紹整個實現(xiàn)流程。
第一步:安裝unrar模塊,直接pip install unrar可能會找不到庫,需要下載unrar library,也就是UnRAR.dll,下載地址為:http://www.rarlab.com/rar/UnRARDLL.exe;
第二步:將unrar安裝路徑添加到系統(tǒng)環(huán)境變量,64位操作系統(tǒng)的路徑為C:Program Files (x86)UnrarDLLx64,然后還需要將x64文件下的UnRAR64.lib和UnRAR64.dall重命名為unrar.lib和unrar.dall,因為unrar模塊識別的文件是unrar.dll和unrar.lib;
第三步:打開Pycharm,就可以用下面代碼實現(xiàn):
from unrar import rarfile#導入rarfile庫path1 = 'C:test.rar'#需要解壓的文件路徑及地址path2 = 'C:TEST'#需要解壓到的文件夾地址rf = rarfile.RarFile(path1 , pwd = '123') # pwd為解壓密碼rf.extractall(path = path2, pwd = '123')
如果你的壓縮包沒有密碼,可以使用以下代碼實現(xiàn):
from unrar import rarfile#導入rarfile庫file = rarfile.RarFile(’C:test.rar’) #需要解壓的文件路徑及文件file.extractall(’C:TEST’) #需要解壓到的文件夾地址
ps:下面看下Python如何解壓.zip文件(如果有密碼需要密碼已知)
需導入頭文件
import zipfile
無密碼
zip_file = zipfile.ZipFile(’./cache/.zip’)#文件的路徑與文件名zip_list = zip_file.namelist() # 得到壓縮包里所有文件for f in zip_list: zip_file.extract(f, ’./cache_F/’,pwd=''.encode('utf-8')) # 循環(huán)解壓文件到指定目錄 zip_file.close() # 關閉文件,必須有,釋放內(nèi)存
有密碼
zip_file = zipfile.ZipFile(’./cache_F/.zip’)#文件的路徑與文件名zip_list = zip_file.namelist() # 得到壓縮包里所有文件for f in zip_list: zip_file.extract(f, ’./cache/’,pwd='mima'.encode('utf-8')) # 循環(huán)解壓文件到指定目錄 zip_file.close() # 關閉文件,必須有,釋放內(nèi)存
總結(jié)
到此這篇關于Python實現(xiàn)加密的RAR文件解壓的方法(密碼已知)的文章就介紹到這了,更多相關Python RAR文件解壓內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持好吧啦網(wǎng)!
相關文章:
1. 專家預言:PHP將比Java更好更受歡迎2. php設計模式之模板模式實例分析【星際爭霸游戲案例】3. 詳解php如何合并身份證正反面圖片為一張圖片4. java使用FFmpeg合成視頻和音頻并獲取視頻中的音頻等操作(實例代碼詳解)5. AJAX實現(xiàn)省市縣三級聯(lián)動效果6. Spring @Primary和@Qualifier注解原理解析7. 詳解springBoot啟動時找不到或無法加載主類解決辦法8. ASP.NET MVC視圖頁使用jQuery傳遞異步數(shù)據(jù)的幾種方式詳解9. Java基于redis和mysql實現(xiàn)簡單的秒殺(附demo)10. SpringBoot+SpringCache實現(xiàn)兩級緩存(Redis+Caffeine)
