KTS-o7/better_bing_image_downloader
Live in productionA fast, reliable Python library and CLI tool for bulk downloading images from Bing or DuckDuckGo.
Python library + CLI to bulk-download images from Bing or DuckDuckGo. Embeddable API, async, typed errors, JSONL manifest for ML training data. Good first issues available.
pypi.org/project/better-bing-image-downloader/
- Python100.0%
1 Review
better_bing_image_downloader is a practical Python library that solves a real problem: collecting image datasets for ML training without manual scraping. The dual Bing/DuckDuckGo backend is a smart choice because DuckDuckGo acts as a fallback when Bing rate-limits, which is common at scale. The async support via aiohttp means it won't block while fetching, making it suitable for pipeline integration rather than just one-off CLI use.
The JSONL manifest output is the standout feature for ML workflows — producing a standard format that tools like YOLO, TensorFlow, and PyTorch dataloaders can consume directly without a conversion step. The typed errors (RateLimitError, NoResultsError, etc.) also show the library was designed for programmatic use, not just interactive scripting.
The repository structure is clean: the CLI is separate from the library API, and the good-first-issue labeling makes it approachable for new contributors. Topics are comprehensive, which helps with discoverability. The README could benefit from a quick-start example showing the most common use case in 3 lines, and adding badges for CI status and PyPI version would increase trust at a glance.
For the next version, supporting a plugin-based image processor (for resizing, deduplication, or format conversion during download) would differentiate it further from simpler scrapers. Overall, a well-scoped tool that fills its niche cleanly.
