Unrar解压rar包

最近在下载很多附件,附件中有很多的格式,.doc,.xls,rar,zip等等。在处理这些附件的时候还是遇到了很多的坑,这里记录一下,希望对后来的朋友有所帮助。
Unrar解压缩rar包
在linux环境中与windows环境后一些区别。
先说说windows环境的使用。
1.pip3 install unrar(安装unrar模块)
然后在from unrar import RarFile会报错LookupError: Couldn’t find path to unrar library
这个是环境的问题。意思是找不到 unrar library的路径,这里我们就需要去下载这个unrar library,事实上它就是UnRAR.dll这个东西,下载网址:http://www.rarlab.com/rar/UnRARDLL.exe 或者去http://www.rarlab.com/rar_add.htm找到UnRAR.dll下载,在lunix下应该需要自己编译。

2.设置环境变量
安装完后我电脑中的路径为C:\Program Files (x86)\UnrarDLL,win7 32位的朋友可以将它添加到环境变量中,64位的将其中的X64文件夹设置为环境变量,因为unrar模块识别的文件是unrar.dll和unrar.lib,所以将文件夹中的UnRAR.dll和UnRAR.lib用小写重命名。

Windows64位的还要将X64下面的UnRAR64.lib和UnRAR64.dall改为unrar.lib和unrar.dall去掉64且为小写。好了,重新尝试 from unrar import rarfile并运行,就成功了!(事实上我还是报错,我把pycharm重新关了之后再启动就好了,可能是pycharm的更新有延迟)

3.开始解压
解压的命令还是非常简单
文件很多的话还可以加入循环来解压,以及重命名。

from unrar import rarfile
file=rarfile.RarFile('filename.rar')
file.excractall('src')#src表示解压的路径

这个方法主要参考:windows unrar安装及使用

linux 使用Unrar加压.rar文件
linux中使用unrar解压rar文件相对来说更加的方便
直接sudo apt install unrar进行安装
之后就可以在shell中来使用相关的命令开始解压
当然如果文件比较多也可以结合os模块写成python的脚本来自动运行
这里说两个常用的命令:
unrar e filename.rar src :将filename.rar文件解压到路径为src的路径下面,e表示不处理rar包中文件路径(比如rar中有文件夹,文件夹下有图片,通过这种方式会直接把图片解压到解压的路径中)
rar x aa.rar 将aa.rar压缩文件解压到aa目录下,并保持原来压缩之前aa文件的目录组织结构

def unrar(self):unrar_list=os.listdir(self.path)for rar in unrar_list:if '.rar' in rar:file = os.path.splitext(rar)filename, type = filefilenames = filename.split('_')[0]#这里用os.system来实现shell命令os.system('unrar e /mnt/attachment/{} {}'.format(rar,self.unrar_path))lis=os.listdir(self.unrar_path)for file in lis:# pattern=re.findall('^(\d+).*?',file)if file=='Thumbs.db':os.remove(self.unrar_path+'/{}'.format('Thumbs.db'))

这里放的代码不完整,自己补全哈。

Unrar解压缩.rar文件相关推荐

  1. java unrar压缩_用java解压缩rar文件 de.innosystec.unrar解压缩rar文件

    这是利用de.innosystec.unrar解压缩rar文件.(他不支持中文和日文.下面是经本人改进后支持双字节的.同时实现了跨平台) /** * unRar method, extract rar ...

  2. 在ubuntu16.04下,使用unrar解压缩rar文件

    1 使用apt-cache命令查找包 zhai@zhai:~/Downloads$ apt-cache search rar | grep rar rar - Archiver for .rar fi ...

  3. linux系统解压缩rar文件夹,linux下解压缩rar文件的办法

    linux下如何解压缩rar文件呢? 请看下面的介绍. 一 .系统环境 1.1 系统环境 实验环境一: CentOS release 5.5 (Final) 2.6.18-194.el5 x86_64 ...

  4. linux 压缩文件夹rar,让Ubuntu 16.04可以压缩/解压缩RAR文件

    在Ubuntu 16.04下经常要用到压缩/解压缩RAR文件, 每次都是网上搜索教程,而且都没有详细解析每个命令的具体用法,现在详细记下方法,以备再次用的时候方便的找到. 因为 参数 e 和 x 经常 ...

  5. python unrar问题_python利用unrar实现rar文件解压缩

    python第三方包unrar可以实现rar文件的解压缩,它以动态库UnRAR为基础,封装而成 1. 下载UnRAR动态库 windows下可以下载编译好的库包: 下载解压后能得到一个DLL: UnR ...

  6. Mac解压缩rar文件

    2019独角兽企业重金招聘Python工程师标准>>> Mac平台本身不支持rar文件的解压缩,但其实Unix-Like平台都是具有这个能力的,RARLAB公司已经覆盖所有的平台了, ...

  7. Ubuntu 16.04 ,压缩/解压缩RAR文件

    以下记录是来自于网络,如果有侵权,立马删掉 Ubuntu刚安装的时候是不能解压rar文件的,只有在安装了解压工具之后,才可以解压. 安装:sudo apt-get install unrar 卸载:s ...

  8. 11-Linux中批量解压缩rar文件

    https://blog.easwy.com/archives/extract-multiple-rar-files-in-linux/ 进入到有.rar文件的目录下,执行下面这句话:(确保安装过ra ...

  9. linux rar加压_Linux环境中解压缩rar文件

    Linux系统中默认没法解压rar文件,之前碰到过zip文件,可以使用zip和unzip来搞定,虽然也不是默认的,但是安装起来比较方便,直接yum就OK了,今天来看一下如何安装rar解压工具. 下图中 ...

最新文章

  1. 如何从 900 万张图片中对 600 类照片进行分类? | 技术头条
  2. HDU——2874 Connections between cities
  3. linux修改网卡mac
  4. sym--数值矩阵转为符号矩阵
  5. kepler架构GPU新特性--HyperQ
  6. LeetCode MySQL 1126. 查询活跃业务
  7. python今日内容_python笔记15
  8. 抽象工厂模式 -- 大话设计模式
  9. Kylin设置JDBC配置greenplum数据源
  10. 绘图神器 —— Graphviz(一)
  11. Python字符串translate()
  12. java方法重载和重载方法_Java中的方法重载
  13. Ember.js 入门指南——model简介1
  14. 判断运行环境是手机还是 PC
  15. 移动网络通信技术【移动电话网络介绍】
  16. 基于RFM的用户画像分析
  17. web SEO简单优化
  18. 【人工智能】人工智能的概况(绪论)
  19. 内嵌式js微信扫码登录及自定义样式
  20. 萃余液P507/P204除油工艺

热门文章

  1. [汇编题]将ax中的16位数分成四组,每组四位,分别放入al,bl,cl,dl中
  2. 怎样判断驱动程序是否有通过WHQL认证获得微软数字签名
  3. OJ每日一练——爱跑步的师兄
  4. Java控制台游戏~600行代码实现打怪小游戏
  5. 微信小程序开发初学者之入门步骤和体验
  6. 【笔记】openwrt - full cone NAT(全锥NAT)、解决“arp_cache: neighbor table overflow!”
  7. 项目进度经常延误,该怎么破?
  8. 2020-07 前端技术汇总
  9. 人品与能力的心态问题
  10. jupyter 安装插件rise,变为幻灯片PPT格式