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系列之从文件读取和保存数据
May 23 Python
利用Python如何生成随机密码
Apr 20 Python
一个Python最简单的接口自动化框架
Jan 02 Python
Python3实现爬取指定百度贴吧页面并保存页面数据生成本地文档的方法
Apr 22 Python
Python代码缩进和测试模块示例详解
May 07 Python
Django页面数据的缓存与使用的具体方法
Apr 23 Python
Python数据类型之Set集合实例详解
May 07 Python
tesserocr与pytesseract模块的使用方法解析
Aug 30 Python
Python操作SQLite/MySQL/LMDB数据库的方法
Nov 07 Python
Python3爬虫关于识别点触点选验证码的实例讲解
Jul 30 Python
matplotlib运行时配置(Runtime Configuration,rc)参数rcParams解析
Jan 05 Python
基于PyQT5制作一个桌面摸鱼工具
Feb 15 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连接Oracle数据库
2006/10/09 PHP
一些常用的php函数
2006/12/06 PHP
php下几个常用的去空、分组、调试数组函数
2009/02/22 PHP
PHP调用MySQL存储过程并返回值的方法
2014/12/26 PHP
php表单处理操作
2017/11/16 PHP
根据地区不同显示时间的javascript代码
2007/08/13 Javascript
jquery 问答知识整理
2010/02/11 Javascript
jQuery的实现原理的模拟代码 -2 数据部分
2010/08/01 Javascript
jq选项卡鼠标延迟的插件实例
2013/05/13 Javascript
给Flash加一个超链接(推荐使用透明层)兼容主流浏览器
2013/06/09 Javascript
jQuery 设置 CSS 属性示例介绍
2014/01/16 Javascript
搭建pomelo 开发环境
2014/06/24 Javascript
不同编码的页面表单数据乱码问题解决方法
2015/02/15 Javascript
Jquery判断radio、selelct、checkbox是否选中及获取选中值方法总结
2015/04/15 Javascript
jquery+css实现的红色线条横向二级菜单效果
2015/08/22 Javascript
Bootstrap页面标题Page Header的实现方法
2017/03/22 Javascript
vue实现未登录跳转到登录页面的方法
2018/07/17 Javascript
JavaScript读写二进制数据的方法详解
2018/09/09 Javascript
Layui弹框中数据表格中可双击选择一条数据的实现
2020/05/06 Javascript
使用Python从有道词典网页获取单词翻译
2016/07/03 Python
Python之自动获取公网IP的实例讲解
2017/10/01 Python
手把手教你python实现SVM算法
2017/12/27 Python
Python3中exp()函数用法分析
2019/02/19 Python
python绘制评估优化算法性能的测试函数
2019/06/25 Python
django 模型中的计算字段实例
2020/05/19 Python
使用CSS3制作饼状旋转载入效果的实例
2015/06/23 HTML / CSS
大学生求职中的自我评价
2013/10/01 职场文书
大学生就业自荐信
2013/10/26 职场文书
大宝sod蜜广告词
2014/03/21 职场文书
《故乡》教学反思
2014/04/10 职场文书
一年级学生期末评语
2014/04/21 职场文书
国旗下讲话演讲稿
2014/05/08 职场文书
三好学生先进事迹材料
2014/08/28 职场文书
初中成绩单评语
2014/12/29 职场文书
Golang 编译成DLL文件的操作
2021/05/06 Golang
Python机器学习之逻辑回归
2021/05/11 Python