Python实现加密的RAR文件解压的方法(密码已知)


Posted in Python onSeptember 11, 2020

博主之前在网上找了很多资料,发现rarfile库不能直接调用,需要安装unrar模块,下面将详细介绍整个实现流程。

第一步:安装unrar模块,直接pip install unrar可能会找不到库,需要下载unrar library,也就是UnRAR.dll,下载地址为:http://www.rarlab.com/rar/UnRARDLL.exe;

第二步:将unrar安装路径添加到系统环境变量,64位操作系统的路径为C:\Program Files (x86)\UnrarDLL\x64,然后还需要将x64文件下的UnRAR64.lib和UnRAR64.dall重命名为unrar.lib和unrar.dall,因为unrar模块识别的文件是unrar.dll和unrar.lib;

第三步:打开Pycharm,就可以用下面代码实现:

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")

如果你的压缩包没有密码,可以使用以下代码实现:

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")) # 循环解压文件到指定目录
 
zip_file.close() # 关闭文件,必须有,释放内存

有密码

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")) # 循环解压文件到指定目录
 
zip_file.close() # 关闭文件,必须有,释放内存

总结

到此这篇关于Python实现加密的RAR文件解压的方法(密码已知)的文章就介绍到这了,更多相关Python RAR文件解压内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python操作摄像头截图实现远程监控的例子
Mar 25 Python
Python SQLite3数据库操作类分享
Jun 10 Python
Python urllib、urllib2、httplib抓取网页代码实例
May 09 Python
通过数据库向Django模型添加字段的示例
Jul 21 Python
python脚本实现数据导出excel格式的简单方法(推荐)
Dec 30 Python
Python实现解析Bit Torrent种子文件内容的方法
Aug 29 Python
Python实现采用进度条实时显示处理进度的方法
Dec 19 Python
windows7 32、64位下python爬虫框架scrapy环境的搭建方法
Nov 29 Python
解决Django删除migrations文件夹中的文件后出现的异常问题
Aug 31 Python
详解Python绘图Turtle库
Oct 12 Python
python 爬取古诗文存入mysql数据库的方法
Jan 08 Python
详解java调用python的几种用法(看这篇就够了)
Dec 10 Python
降低python版本的操作方法
Sep 11 #Python
Django crontab定时任务模块操作方法解析
Sep 10 #Python
Django日志及中间件模块应用案例
Sep 10 #Python
Django nginx配置实现过程详解
Sep 10 #Python
使用Python操作MySQL的小技巧
Sep 10 #Python
python编写实现抽奖器
Sep 10 #Python
Python字符串及文本模式方法详解
Sep 10 #Python
You might like
preg_match_all使用心得分享
2014/01/31 PHP
10个简化PHP开发的工具
2014/12/25 PHP
PHP抓取网页、解析HTML常用的方法总结
2015/07/01 PHP
Thinkphp框架开发移动端接口(2)
2016/08/18 PHP
PHP数组内存利用率低和弱类型详细解读
2017/08/10 PHP
选择TreeView控件的树状数据节点的JS方法(jquery)
2010/02/06 Javascript
EasyUI中的tree用法介绍
2011/11/01 Javascript
在JavaScript里嵌入大量字符串常量的实现方法
2013/07/07 Javascript
JavaScript采用递归算法计算阶乘实例
2015/08/04 Javascript
jQuery轻松实现表格的隔行变色和点击行变色的实例代码
2016/05/09 Javascript
关于vue.js弹窗组件的知识点总结
2016/09/11 Javascript
用director.js实现前端路由使用实例
2017/01/27 Javascript
基于DOM节点删除之empty和remove的区别(详解)
2017/09/11 Javascript
node.js支持多用户web终端实现及安全方案
2017/11/29 Javascript
JavaScript函数apply()和call()用法与异同分析
2018/08/10 Javascript
JS 设计模式之:工厂模式定义与实现方法浅析
2020/05/06 Javascript
Python中__call__用法实例
2014/08/29 Python
Python标准异常和异常处理详解
2015/02/02 Python
Python中表达式x += y和x = x+y 的区别详解
2017/06/20 Python
python基础学习之如何对元组各个元素进行命名详解
2018/07/12 Python
python 寻找离散序列极值点的方法
2019/07/10 Python
Python2和Python3中@abstractmethod使用方法
2020/02/04 Python
html5 Canvas画图教程(5)—canvas里画曲线之arc方法
2013/01/09 HTML / CSS
Eastbay官网:美国最大的运动鞋网络零售商
2016/07/27 全球购物
Original Penguin英国官方网站:美国著名休闲时装品牌
2016/10/30 全球购物
巴西最大的家电和百货零售商:Casas Bahia
2016/11/22 全球购物
Mytheresa美国官网:德国知名的女性奢侈品电商
2017/05/27 全球购物
Lookfantastic阿联酋官网:英国知名美妆护肤购物网站
2020/05/26 全球购物
教师节促销活动方案
2014/02/14 职场文书
2014年毕业演讲稿范文
2014/05/13 职场文书
理想演讲稿范文
2014/05/21 职场文书
承诺书格式范文
2014/06/03 职场文书
司法局2014法制宣传日活动总结
2014/11/01 职场文书
在职证明范本
2015/06/15 职场文书
大学生暑期实践报告之企业经营管理
2019/08/08 职场文书
Python 处理表格进行成绩排序的操作代码
2021/07/26 Python