Unzipper is an utility for automatically extracting ZIP and RAR files from a monitored folder, with advanced copy logic and much more.
- Automatic Extraction: Monitors a folder for new ZIP and RAR files and extracts them automatically.
- Modern UI: Clean, card-like interface with material-inspired, visually appealing checkboxes and consistent button/input styling.
- Customizable Copying:
- Copy all files of selected extensions after extraction.
- Advanced priority-based copy logic (e.g., copy only the highest-priority file types if present).
- Copy whole extracted folder to destination (new option, with a single checkbox).
- Immediate Stop Controls: Extraction and copying can be halted instantly with a stop button.
- Delete Options:
- Delete archive after extraction.
- Delete extracted folder after copying (now works correctly, including when copying the whole folder).
- Startup Option: Option to run Unzipper automatically at Windows startup.
- System Tray Support: Minimize to tray with a custom icon; restore or exit from the tray menu.
- Robust Error Handling: Clear log output for all actions and errors. <<<<<<< HEAD
- Config Persistence: Remembers all settings between sessions.
A pre-built Windows executable (EXE) is provided for convenience. You can use it directly without installing Python or any dependencies.
- Download the latest version from the Releases section (or from this repository if provided).
- Simply unzip the file and double-click the EXE to run Unzipper on Windows.
- Use PyInstaller to build:
pyinstaller --onefile --windowed --icon=icon.ico unzipper.py
- Make sure
icon.icois in the same directory asunzipper.py. ======= - Config Persistence: Remembers all settings between sessions, including the new copy-whole-folder option.
- Beautiful, Large Checkboxes: Modern, material-style checkboxes for all options.
- Automatic Monitoring: Monitoring starts automatically on app launch and restarts on any relevant setting change.
copy_folder
-
Select Folders:
- Set the folder to monitor for new archives.
- Set the destination folder for extracted/copied files.
-
Configure Copying:
- Enable "Copy files" and specify extensions (e.g.,
jpg, png, ai). - Or enable "Copy files with logic" and enter priority logic (e.g.,
ai; png, esp; jpg). - Or enable "Copy whole extracted folder to destination" to copy the entire extracted folder after extraction.
- Enable "Copy files" and specify extensions (e.g.,
-
Set Options:
- Choose whether to delete archives after extraction or delete extracted folders after copying (works for both file and folder copy modes).
- Enable "Run at startup" if desired.
-
Start Monitoring:
- Monitoring now starts automatically when the app launches.
- Use Stop Monitoring to pause.
- Use Extract All Existing to process all current archives in the monitored folder.
- Use Stop Extracting to halt extraction/copying immediately.
-
Minimize to Tray:
- Click Minimize to Tray to hide the window and keep Unzipper running in the background.
- Restore or exit via the tray icon menu.
-
Logs:
- All actions and errors are shown in the log area at the bottom.
- Python 3.8+
- PyInstaller
- pystray
- Pillow
- watchdog
- rarfile (optional, for RAR support)
- pywin32 and winshell (for startup shortcut)
Install all requirements with:
pip install -r requirements.txt- For RAR extraction, you must have
unrar.exeavailable (see log for instructions if missing). - All settings are saved in
unzipper_config.txtin the app directory. - The tray icon and taskbar icon are set from
icon.ico.
