Metadata-Version: 2.4
Name: qbit-torrent-extract
Version: 0.2.0
Summary: Automated nested archive extraction for qBittorrent downloads - solves the 'No files found' problem for *arr apps
Author-email: Your Name <your.email@example.com>
Maintainer-email: Your Name <your.email@example.com>
License: MIT
Project-URL: Homepage, https://github.com/ggfevans/qbit-torrent-extract
Project-URL: Repository, https://github.com/ggfevans/qbit-torrent-extract.git
Project-URL: Bug Tracker, https://github.com/ggfevans/qbit-torrent-extract/issues
Keywords: qbittorrent,archive,extraction,zip,rar,7z,automation,torrent,readarr,sonarr,radarr,lidarr,*arr
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: End Users/Desktop
Classifier: Intended Audience :: System Administrators
Classifier: Topic :: System :: Archiving
Classifier: Topic :: System :: Filesystems
Classifier: Topic :: Utilities
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Operating System :: POSIX :: Linux
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Operating System :: Microsoft :: Windows
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Environment :: Console
Classifier: Natural Language :: English
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: click>=8.0.0
Requires-Dist: tqdm>=4.60.0
Requires-Dist: rarfile>=4.0
Requires-Dist: py7zr>=0.20.0
Provides-Extra: dev
Requires-Dist: pytest>=7.0.0; extra == "dev"
Requires-Dist: pytest-cov>=4.0.0; extra == "dev"
Requires-Dist: black>=23.0.0; extra == "dev"
Requires-Dist: flake8>=6.0.0; extra == "dev"
Requires-Dist: mypy>=1.0.0; extra == "dev"
Requires-Dist: types-tqdm>=4.65.0; extra == "dev"
Requires-Dist: psutil>=5.9.0; extra == "dev"
Requires-Dist: pre-commit>=3.0.0; extra == "dev"
Dynamic: license-file

# qbit-torrent-extract

Your torrent finished downloading. It's an archive. Inside that archive is another archive. Sonarr doesn't know what to do. Sonarr gives up. You don't get your show.

This tool opens the archives. Now you get your show.

## Install

```bash
pip install qbit-torrent-extract
```

## Use It

Tell qBittorrent to run it when torrents finish:

**Tools → Options → Downloads → Run external program on torrent completion**

```
qbit-torrent-extract "%F"
```

That's the whole thing.

## What It Opens

- ZIP files
- RAR files (even the weird split ones)
- 7z files
- TAR files

## Options

Most people don't need these.

```
--no-preserve    Delete archives after extracting (careful)
--verbose        Show more information
--max-ratio      Zipbomb protection limit
--max-depth      How deep to go into nested archives
```

## It's Safe

It checks for zipbombs. It won't follow weird paths that try to write files outside the folder. It skips files that are still downloading. It keeps your original archives unless you tell it not to.

## License

MIT
