python-rarfile - python-rarfile - RAR archive reader for Python

Distribution: Fedora 25
Repository: CERT Forensics Tools i386
Package name: python-rarfile
Package version: 2.6
Package release: 1.fc25
Package architecture: i686
Package type: rpm
Installed size: 111.12 KB
Download size: 41.65 KB
Official Mirror:
This is Python module for RAR_ archive reading. The interface is made as zipfile_ like as possible. Licensed under ISC_ license. .. _RAR: .. _zipfile: .. _ISC: Features: - Supports both RAR 2.x and 3.x archives. - Supports multi volume archives. - Supports Unicode filenames. - Supports password-protected archives. - Supports archive comments. - Archive parsing and non-compressed files are handled in pure Python code. - For compressed files runs ``unrar`` utility. - Works with both Python 2.x and 3.x. Links: - News: - FAQ: - API documentation: - Downloads, GIT:




  • python-rarfile = 2.6-1.fc25
  • python-rarfile(x86-32) = 2.6-1.fc25
  • python2.7dist(rarfile) = 2.6
  • python2dist(rarfile) = 2.6

    Install Howto

    1. Download cert-forensics-tools-release-25 rpm:
    2. Install cert-forensics-tools-release-25 rpm:
      # rpm -Uvh cert-forensics-tools-release*rpm
    3. Install python-rarfile rpm package:
      # dnf --enablerepo=forensics install python-rarfile


    • /usr/lib/python2.7/site-packages/rarfile-2.6-py2.7.egg-info
    • /usr/lib/python2.7/site-packages/
    • /usr/lib/python2.7/site-packages/rarfile.pyc
    • /usr/lib/python2.7/site-packages/rarfile.pyo
    • /usr/share/doc/python-rarfile/LICENSE
    • /usr/share/doc/python-rarfile/PKG-INFO
    • /usr/share/doc/python-rarfile/README.rst


    2013-04-10 - Marko Kreen <> 2.6-1 * Release 2.6-1 Version 2.6 (2013-04-10) Add context manager support for RarFile class. Both RarFile and RarExtFile support with statement now. (Wentao Han) RarFile.volumelist() method, returns filenames of archive volumes. Re-throw clearer error in case unrar is not found in PATH. Sync new unrar4.x error code from rar.txt. Use Sphinx for documentation, push docs to Version 2.5 (2012-01-19) Fixes: and RarExtFile.readinto() now do looping read to work properly on short reads. Important for Python 3.2+ where read from pipe can return short result even on blocking file descriptor. Proper error reporting in RarFile.extract(), RarFile.extractall() and RarFile.testrar(). from unrar pipe: prefer to return unrar error code, if thats not available, do own error checks. Avoid string addition in, instead use always list+join to merge multi-part reads. dumprar: dont re-encode byte strings (Python 2.x). This avoids unneccessary failure when printing invalid unicode. Version 2.4 (2011-11-05) Fixes: USE_DATETIME: survive bad values from RAR Fix bug in corrupt unicode filename handling dumprar: make unicode chars work with both pipe and console Version 2.3 (2011-07-03) Features: Support .seek() method on file streams. (Kristian Larsson) Support .readinto() method on file streams. Optimized implementation is available on Python 2.6+ where memoryview is available. Support file comments - RarInfo.comment contains decompressed data if available. File objects returned by are io.RawIOBase-compatible. They can further wrapped with io.BufferedReader and io.TextIOWrapper. Now .getinfo() uses dict lookup instead of sequential scan when searching archive entry. This speeds up prococessing for archives that have many entries. Option UNICODE_COMMENTS to decode both archive and file comments to unicode. It uses TRY_ENCODINGS for list of encodings to try. If off, comments are left as byte strings. Default: 0 Option PATH_SEP to change path separator. Default: r'\', set rarfile.PATH_SEP='/' to be compatibe with zipfile. Option USE_DATETIME to convert timestamps to datetime objects. Default: 0, timestamps are tuples. Option TRY_ENCODINGS to allow tuning attempted encoding list. Reorder RarInfo fiels to better show zipfile-compatible fields. Standard regtests to make sure various features work Compatibility: Drop RarInfo.unicode_filename, plain RarInfo.filename is already unicode since 2.0. .read(-1) reads now until EOF. Previously it returned empty buffer. Fixes: Make encrypted headers work with Python 3.x bytes() and with old 2.x ‘sha’ module. Simplify subprocess.Popen usage when launching unrar. Previously it tried to optimize and work around OS/Python bugs, but this is not maintainable. Use temp rar file hack on multi-volume archives too. Always .wait() on unrar, to avoid zombies Convert struct.error to BadRarFile Plug some fd leaks. Affected: Jython, PyPy. Broken archives are handled more robustly.

    2010-08-19 - Marko Kreen <> 2.2-1 * Release 2.2-1 Fixes: * Relaxed volume naming. Now it just calculates new volume name by finding number in old one and increasing it, without any expectations what that number should be. * Files with 4G of compressed data in one colume were handled wrong. Fix. * DOS timestamp seconds need to be multiplied with 2. * Correct EXTTIME parsing. Cleanups: * Compressed size is per-volume, sum them together, so that user sees complete compressed size for files split over several volumes. * dumprar: Show unknown bits. * Use ``struct.Struct()`` to cache unpack formats. * Support missing ``os.devnull``. (Python 2.3)