作者:封翼星落妞妞 | 来源:互联网 | 2023-10-17 11:55
对于一般的扩展包,我们一般直接 pip install xxx
即可安装,
但是 unrar 直接安装后,发现并不能通过Python程序实现解压的功能,
并且会提示 Couldn't find path to unrar library...的报错,
这是因为 Python下的 unrar
还依赖了 RAR官方的库
。
Linux编译安装,生成so文件,并配置环境变量:
1. 在对应目录下载unrar
cd /usr/local/src/
如果没有权限,则在自己有权限的路径下下载即可 。
wget http://www.rarlab.com/rar/unrarsrc-6.0.3.tar.gz
2、解压安装包,进入安装包目录
tar zxvf unrarsrc-6.0.3.tar.gz
cd rar/unrar
3、编译安装,(如有权限,生成libunrar.so 文件;如无权限,则不生成,下一步)
make lib
make install-lib
如果 make install-lib没有权限,进行下一步。
4、配置环境变量
vim ~/.bashrc
按i进入编辑模式,复制以下命令。
如果上一步有权限,则:
export UNRAR_LIB_PATH=/usr/lib/libunrar.so
如果没有权限,则:
export UNRAR_LIB_PATH="/home/.../libunrar.so"
5. 使变量生效
有权限,使变量生效:
source /etc/profile
没有权限,不能make install-dir, 使变量生效:
source ~/.bashrc
6. 文件解压至指定目录
pip install unrar
from unrar import rarfile
# 压缩文件位置
rarPath = './miao.rar'
RarFile = rarfile.RarFile(rarPath, mode='r')
RarFile.extractall('./miao/') # 解压文件到指定目录(默认当前目录)