python解压缩-[rar]、[zip]

本文介绍了如何使用Python在Windows环境下解压缩RAR和ZIP文件。针对RAR格式,文章详细说明了解决Python库rarfile和unrar库的环境配置问题,包括添加unrar.exe到环境变量和下载UnRAR DLL库文件。对于ZIP格式,文章提到了解压缩可能导致的中文乱码问题,并提供了两种解决方案,包括修改zipfile库源码和解压后递归重命名。
摘要由CSDN通过智能技术生成

Python版本:3.9.6

ide:PyCharm 2021.1.3


        常用的压缩格式有很多种,而不同的压缩包的解压需要用到不同的库,下面根据一些常用的压缩包给出各自的解决方案。


目录

rar格式

zip格式

完整源码


rar格式

        主要代码就两行,如下:

import rarfile

rar = rarfile.RarFile(file)
# 解压缩到指定目录
rar.extractall(outdir)

        但是执行时大多数人会报错:rarfile.RarCannotExec: Cannot find working tool,如下:

        看上去像是少了什么东西,我们再来看看这个库的说明,发现必须要配合unrar的工具来使用。

        通过网上找方法,基本都是以下两种:

        1、下载WinRAR工具,将UnRAR.exe放在脚本目录venv/Scripts下,因为rarfile识别的是unrar.exe,需要改下名称

        2、系统环境变量Path中加入unrar.exe所在目录(注意是系统变量,不是用户变量)。

        笔者测试了两种方法,第一种方法没有作用,第二种方法是有用的,说明无论如何都要配置环境变量(如果使用pychram,注意修改之后重启pychram端)。

        同时,笔者发现了另外一个unrar库,使用方式同rarfile,如下:

from unrar import rarfile

rar = rarfile.RarFile(file)
# 解压缩到指定目录
rar.extractall(outdir)

        但是执行时报错:LookupError: Couldn't find path to unrar library.,如下:

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值