rarfile - RAR archive reader for Python — RarFile documentation

# rarfile - RAR archive reader for Python

This is Python module for RAR archive reading. The interface follows the style of zipfile. Licensed under ISC license.

Features:

- Supports both RAR3 and RAR5 format archives.

- Supports multi volume archives.

- Supports Unicode filenames.

- Supports password-protected archives.

- Supports archive and file comments.

- Archive parsing and non-compressed files are handled in pure Python code.

- Compressed files are extracted by executing external tool: unrar (preferred), unar, 7zip or bsdtar.

- Works with Python 3.6+.

Backends:

Backend | Status | Notes
--- | --- | ---
unrar | Supported | Recommended: full format support. Non-free software, but free to use.
unar | Supported | Not usable on Windows: last build is from 2013 (v1.8.1) that does support output to stdout. Does not support RAR2 locked files. Does not support RAR5 Blake2 hash checking.
7zip | Supported | RAR support not available on Debian/Ubuntu repos.
p7zip | Supported | Unmaintained? Requires `p7zip-rar` package on Debian/Ubuntu.
bsdtar | Supported | Not recommended: limited RAR format support. Does not support multi-volume archives. Does not support solid archives. Does not support password-protected archives. Does not support RARVM-based compression filters.
unrar-free | Supported | Supports output to stdout (v0.2.0). Based on libarchive so similar format support as `bsdtar` but supports multi-volume (v0.3.0).

Links:

- Documentation

- Downloads

- Git repo

Documentation:

- API Documentation
- FAQs
- Release News

## Indices and tables

- Index

- Module Index

- Search Page