Software Engineering, 2026
Image Downloader CLI
A tested Python command-line tool that downloads images from a list of URLs, validating each file and skipping failures safely.
- Automated tests
- 14
- Runtime dependencies
- 1
The problem
Bulk downloads fail in messy ways — bad URLs, non-image responses, duplicate file names. The tool needs to keep going and report clearly.
What it does
- Three focused modules: URL reader, downloader and CLI.
- Checks Content-Type so only real images are saved; duplicate names get a numeric suffix.
- One bad URL is logged and skipped — it never stops the run.
- Offline test suite with mocked HTTP that runs in under a second; meaningful exit codes.
Built with
- Python
- requests
- pytest
- unittest.mock
- argparse