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不规范的日期字符串处理类
Jun 10 Python
老生常谈python的私有公有属性(必看篇)
Jun 09 Python
Python的numpy库中将矩阵转换为列表等函数的方法
Apr 04 Python
Django中使用第三方登录的示例代码
Aug 20 Python
python实现指定字符串补全空格、前面填充0的方法
Nov 16 Python
Python实现京东秒杀功能代码
May 16 Python
python在openstreetmap地图上绘制路线图的实现
Jul 11 Python
flask框架自定义过滤器示例【markdown文件读取和展示功能】
Nov 08 Python
python 串口读取+存储+输出处理实例
Dec 26 Python
用Python自动清理电脑内重复文件,只要10行代码(自动脚本)
Jan 09 Python
总结Python连接CS2000的详细步骤
Jun 23 Python
Python Pandas数据分析之iloc和loc的用法详解
Nov 11 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
PHP 将逗号、空格、回车分隔的字符串转换为数组的函数
2012/06/07 PHP
PHP常见错误提示含义解释(实用!值得收藏)
2016/04/25 PHP
Jquery中扩展方法extend使用技巧
2014/08/24 Javascript
JSONP之我见
2015/03/24 Javascript
jQuery对html元素的取值与赋值实例详解
2015/12/18 Javascript
浅谈js的html元素的父节点,子节点
2016/08/06 Javascript
JavaScript中数据类型转换总结
2016/12/25 Javascript
学习使用jQuery表单验证插件和日历插件
2017/02/13 Javascript
javascript 中的继承实例详解
2017/05/05 Javascript
微信小程序实现锚点定位楼层跳跃的实例
2017/05/18 Javascript
基于 Vue.js 之 iView UI 框架非工程化实践记录(推荐)
2017/11/21 Javascript
Angular父组件调用子组件的方法
2018/04/02 Javascript
js中split()方法得到的数组长度问题
2018/07/19 Javascript
jquery的$().each和$.each的区别
2019/01/18 jQuery
vue实现图片上传预览功能
2019/12/23 Javascript
Python反射用法实例简析
2017/12/22 Python
python tensorflow基于cnn实现手写数字识别
2018/01/01 Python
python安装模块如何通过setup.py安装(超简单)
2018/05/05 Python
python爬虫自动创建文件夹的功能
2018/08/01 Python
Python读取stdin方法实例
2019/05/24 Python
Python利用sqlacodegen自动生成ORM实体类示例
2019/06/04 Python
Django发送邮件功能实例详解
2019/09/02 Python
pytorch: Parameter 的数据结构实例
2019/12/31 Python
班组长竞聘书
2014/03/31 职场文书
市场营销毕业生自荐信范文
2014/04/01 职场文书
竞选副班长演讲稿
2014/04/24 职场文书
敬老院活动总结
2014/04/28 职场文书
软件项目实施计划书
2014/05/02 职场文书
公司周年庆典策划方案
2014/05/17 职场文书
局火灾防控工作方案
2014/05/25 职场文书
详细的本科生职业生涯规划范文
2014/09/16 职场文书
卖房授权委托书样本
2014/10/05 职场文书
开展党的群众路线教育实践活动情况汇报
2014/11/05 职场文书
挂职个人工作总结
2015/03/05 职场文书
Windows Server 2008 修改远程登录端口以及配置防火墙
2022/04/28 Servers
MySQL数据库配置信息查看与修改方法详解
2022/06/25 MySQL