UNRAR库的包装器,基于cTypes。

unrar的Python项目详细描述


使用cTypes通过UNRAR库处理RAR存档文件。

文档:http://python-unrar.readthedocs.org

安装UNRAR库

您可以从以下位置下载UNRAR库源文件(和/或二进制文件):

http://www.rarlab.com/rar_add.htm

然后编译(可能需要根据操作系统重命名要使用的makefile)并从那里安装:

$ make lib

$ make install-lib

对于windows,您还可以下载已经编译的库(http://www.rarlab.com/rar/UnRARDLL.exe)。

如果不希望安装库,则应通过将库文件添加到搜索库的目录(或更改所需的环境变量)使其“可查找”

另一种方法是,您还可以在环境中设置unrr lib_path变量,指向库路径,python unrr将尝试从该变量加载unrr库。

安装python unrr

要安装python unrr:

$ pip install unrar

更改

v0.3
  • 向rarfile添加open/read方法,将数据提取到内存中。
  • 增加了对unrar事件回调的支持
v0.2
  • 添加了Python3支持并修复了一些Unicode问题。

示例

>>> from unrar import rarfile
>>> rar = rarfile.RarFile('sample.rar')
>>> rar.namelist()
[u'test_file.txt']
>>> rar.printdir()
File Name                                             Modified             Size
test_file.txt                                  2013-04-14 08:20:28           17
>>> rar.testrar()
>>> info = rar.infolist()[0]
>>> info.filename
u'test_file.txt'
>>> info.file_size
17L
>>> info.date_time
(2013L, 4L, 14L, 8L, 20L, 28L)
>>> rar.read('test_file.txt')
'This is for test.'
>>> rar.extractall()

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java通过Spring MVC web应用程序向客户端发送文本文件   java是否可以在运行时动态实例化DAO类?   调用VB。来自Java的net函数   java在Android中通过单击打开特定文件夹   java如何使用maven pom。xml标识非标准项目结构中的testng测试用例?   java为什么FOP在大文件上崩溃?   Architecture python+flask和spring boot+java   java Kafka工具根本没有启动Ubuntu 19.10   如何使用Eclipse运行Java USB API for Windows   java如何在Eclipse中查看J2EE预览服务器/容器的日志/控制台?   网页抓取是否可以使用Java crawler crawler4j暂停和恢复抓取?   java当我第二次按下按钮时,应用程序停止工作   带有偏移量和限制的java SQLite分页问题   java如何在OSX mavericks中将端口80转发到8080   java从泛型方法调用非泛型方法   java My代码未按预期工作。十进制输出不是它应该的样子   节点。java中的js加密(jasypt)和nodejs中的解密   java乘法表不工作数组索引超出范围   java将JDBC与Firebirdsql连接起来