Python实现加密的RAR文件解压(密码已知)
发布网友
发布时间:2024-09-30 16:49
我来回答
共1个回答
热心网友
时间:2024-10-14 12:32
在网上搜集资料后,我发现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.dll重命名为unrar.lib和unrar.dll,因为unrar模块识别的文件是unrar.dll和unrar.lib。
第三步:打开Pycharm,就可以用以下代码实现:
后来博主在测试时发现,通常情况下,将文件压缩成RAR格式时,会出现一个选项“加密文件名”,如下图所示。当加密文件名后,上述代码将无法完成解压。判断一个文件是否加密了文件名,其实非常简单。只需双击压缩包,如果能直接看到包里面的内容,那么此时是没有加密文件名的。如果双击后直接要求输入密码,那么此时是加密文件名的。
如果加密了文件名,可以通过以下代码完成解压:
当然,如果你的压缩包没有密码,可以使用以下代码实现: