GETENMAGEN — Advanced Image Downloader & Viewer
An efficient, flexible, and robust open-source library designed to automate image downloading using Bing scraping capabilities with full configuration control.
📌 Introduction
Hello! Thank you for using getenmagen. This library was developed to provide an intuitive and powerful way to build image datasets or feed visual interfaces directly from the terminal.
⚠️ Author Responsibility: This library was created for automation and educational purposes. The author is not responsible for any malicious use or scraping violations.
🛠️ Documentation & Architecture
The library is built around an Object-Oriented design, featuring two main classes: Downloader (which handles execution) and Defaults (which handles global configuration states).
1. Initialization & Custom Directory
By default, the library saves downloaded assets in your module's local directory. You can instantiate the downloader and define a custom root storage folder:
from getenmagen.core import Downloader
# Instantiates the downloader with a custom storage path
downloader = Downloader(default_save_dir="my_custom_folder")
2. Executing Downloads (The download Method)
The core execution method is .download(). It accepts four parameters:
- query (str): The search term or keyword for the images (Required).
- save_dir (str, optional): Overrides the instance default storage folder for this specific execution.
- qt (int, optional): Number of images to fetch. Bound between 1 and 16.
- cooldown (float, optional): Seconds to pause between image display popups.
Example Usage:
downloader.download(query="cyberpunk triangle", qt=5, cooldown=1.5)
3. Runtime Mutability & Global Configurations
The Defaults class allows you to dynamically mutate configuration states globally without modifying your core execution scripts.
Example Usage:
from getenmagen.defaults import Defaults
from getenmagen.core import Downloader
# Initialize global configuration
config = Defaults()
config.set_default("min_qt", 8) # Mutates the state dynamically
# Pass the mutability object to the downloader
downloader = Downloader(defaults_obj=config)
🚨 Error Handling
getenmagen comes equipped with explicit, strictly typed custom exceptions to help you build safer scripts:
DownloadImageError: Raised when network connections fail or the search query yields 0 results.
ShowImageError: Raised when the Operating System image viewer cannot be initialized or fails to open.
InvalidImageError: Raised if corrupted or broken file formats are intercepted during execution.
📄 License & Contribution Distributed under the MIT License. Feel free to open Issues or submit Pull Requests on our official page!
Official Project Page: https://pypi.org/project/getenmagen/
Thank you for using getenmagen! Happy coding ;)
Metadata
Release files for getenmagen 0.2.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| getenmagen-0.2.5.tar.gz | 4.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| getenmagen-0.2.5-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 10.4 kB
Release files / getenmagen-0.2.5.tar.gz
| Download URL | getenmagen-0.2.5.tar.gz |
|---|---|
| Size | 4.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
afe103c0895ac2855ab8167845fe1abeac4f0710f7c67c67ec356336c10c8924
|
|
BLAKE2b-256 checksum How to use checksums |
3eb0980e7117661771ecf5502c94f6fc7bc8f49d9f214083e53ce0dd80587cdb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.1
|
Release files / getenmagen-0.2.5-py3-none-any.whl
| Download URL | getenmagen-0.2.5-py3-none-any.whl |
|---|---|
| Size | 6.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
6a6dd4d4d117e2cd7388cc684611ebf4f4a7d1f084ba4181c998bbfb6c446c8e
|
|
BLAKE2b-256 checksum How to use checksums |
84993a3e6e931f3b3f7a207f0b62e7f2310229fddb6cefb8c1a6749aca032f4c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.1
|