Table of Contents
This ExtractEase is a powerful, easy-to-use Python application built with tkinter, designed to streamline the process of extracting ZIP, 7z, and RAR files. It allows users to select directories, view file structures, and extract compressed files with ease, offering both specific and bulk extraction functionalities.
Launch the application. Navigate through the file system tree to find and select the directory containing the compressed files. Choose the type of extraction - specific extension or raw extraction. Monitor progress through the integrated progress bar. View logs and results in the GUI.
-
Open the Application: Start the application to view the main window, which displays the file system tree and various extraction options. Navigating and Selecting Files
-
File System Tree: Use the tree view to navigate through the file system. Select a folder to view its contents and choose files for extraction.
- Extract Specific Extension (Same Folder): Click this button to extract files with a specific extension from the selected directory. The files are extracted to the same folder.
- Extract Specific Extension (Specific Folder): This button allows you to extract files with a specific extension from the selected directory into a different, user-specified folder.
- RAW Extraction (Same Folder): Use this button for a bulk extraction of all supported archive files (ZIP, 7z, RAR) in the selected folder. The extracted files are saved in the same directory.
- RAW Extraction (Specific Folder): Similar to the above, but allows you to choose a different destination folder for the extracted files. Monitoring Progress
-
- Progress Bar: The progress bar at the bottom of the application provides real-time feedback on the extraction process, showing how much work has been completed.
- Error and Success Logs: After the extraction process, a new window displays the successful extractions and any errors encountered, providing detailed information about each processed file.
- File System Refresh: The file system tree is dynamically updated to reflect changes in the directory structure.
- Multi-Threaded Extraction: The application uses threading to ensure that the UI remains responsive during the extraction process.
Install pyintaller
pip install pyinstaller
Generate the standalone app
pyinstaller --windowed --onefile your_script_name.py
- Create a new folder on your desktop or in another convenient location.
- This folder will hold the contents of your * . dmg file.
- Name it something like 'DMGContents" or similar.
- Copy your "YourApp.app* file into this new folder.
- Open a new Finder window and go to the /Applications' folder.
- Drag the Applications folder into your 'DMGContents" folder while holding down the Cmd and 'Alt keys. This will create an alias (shortcut) to the Applications folder in your 'DMContents" folder.
- Now, use Disk Utility or the 'hdiutil command to create your . dm file from the "DMGContents" folder.
- Using Disk Utility:
Follow the steps previously described but select the DMGContents* folder instead of just the app.
- Using Terminal with hdiutil:
- Use the hdiutil' command like before, but point it to your DMContents" folder.
For example:
hdiutil create -volname "YourApp" -srcfolder /path/to/YourApp.app -ov -format UDZO YourApp.dmg
-
To make the . dmg file look more professional, you can customize its appearance:
-
Mount the DMG: Double-click the " . dmg" file to mount it.
-
Open the Mounted Volume: Open the mounted volume in Finder.
-
Arrange Icons: Arrange the app and the Applications shortcut in a way that encourages the user to drag the app into the Applications folder.
-
You can add text instructions or use a background image to make this more intuitive.
-
Set Icon Sizes and View Options:
Set the icon size and the view options as you prefer (e.g., using 'View Show View Options' in Finder).
- You can make these view options default for all who open the dm by clicking
- Use as Defaults" at the bottom of the view options window.
- Eject and Test:
- After arranging everything, eject the dm (by dragging the mounted volume to the Trash or right-clicking and selecting 'Eject *) and then remount it to ensure your changes are saved.
Once you're satisfied with the appearance and functionality, your * . dm file is ready for distribution.
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement".
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Distributed under the GNU GENERAL PUBLIC LICENSE. See LICENSE.txt
for more information.