robust-downloader
A Simple Robust Downloader written in Python
What it is and what it does
Robust Downloader wraps HTTP downloads with reliability features: automatic retries on failure, resumable transfers to avoid re-downloading on interruption, progress visualization via tqdm, and optional integrity verification using MD5 or SHA256 checksums. It exposes both a Python function and a command-line tool, making it suitable for scripting or direct terminal use.
The package depends on requests for HTTP transport, tqdm for progress bars, and colorlog for formatted logging. It targets Python 3.8 through 3.11 and is classified as Beta. With no known vulnerabilities and permissive licensing, it's positioned as a lightweight alternative to more complex download managers for developers who need basic robustness without heavy dependencies.
Use it for:
- Download large files over unreliable networks where interruptions are common and resuming saves bandwidth.
- Automate file retrieval in scripts with built-in retry and timeout handling to reduce manual error handling.
- Verify downloaded files match expected checksums to detect corruption or tampering during transfer.
- Monitor download progress in terminal applications using the CLI with colored logging output.
- Integrate download logic into Python applications via the simple download() function with proxy and redirect control.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides resumable downloads with retry logic, progress tracking, and integrity checking via Python API or command-line interface.
Yes, if you need straightforward resumable downloads with retries and integrity checking. The low install friction, active maintenance, permissive license, and absence of vulnerabilities make it a safe choice. Not worth installing if you need advanced features like batch downloads, authentication schemes beyond basic proxy support, or streaming to memory—it's intentionally minimal.
Install
robust-downloader on PyPI
pip
pip install robust-downloaderuv
uv add robust-downloaderpoetry
poetry add robust-downloaderInstalling robust-downloader
Before you install
Low friction installation with three lightweight runtime dependencies (tqdm, colorlog, requests). Actively maintained with recent commits; last release was over two years ago but repository remains active.
License in practice
Licensed under Apache Software License (permissive), allowing use in most commercial and open-source projects without significant restrictions.
Quickstart
pip install robust-downloader
from robust_downloader import download
download("https://example.com/file.zip")
Verify before relying
- Whether resumable downloads work across all network conditions or have specific protocol requirements.
- Performance characteristics for very large files or slow connections.
- Whether decryption (--key option) uses standard algorithms or custom implementation.
Package facts
| License | not declared (permissive) |
| Python support | not specified |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 3 — tqdm, colorlog, requests |
| Maintenance | actively maintained — 1,005 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 1,560,219/month — #3,761 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: robust_downloader-0.0.2-py3-none-any.whl
Tags
More Utilities packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
charset-normalizerDetects and normalizes text encoding from…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
pluggyPluggy provides a plugin system that lets you…
permissive · top 100 on PyPI
PygmentsPygments is a syntax highlighter that colorizes…
permissive · top 100 on PyPI
sixSix provides utility functions to write Python…
permissive · top 100 on PyPI
retryProvides a decorator and function wrapper for…
permissive · top 1,000 on PyPI
retryingRetrying is a decorator-based library that adds…
permissive · top 1,000 on PyPI
reretryA decorator and function wrapper for retrying…
permissive · top 15,000 on PyPI
tenacityTenacity is a retry library that adds automatic…
permissive · top 100 on PyPI
piperPypiper manages shell command execution within…
permissive · top 15,000 on PyPI
tuspyA Python client for uploading files to servers…
permissive · top 5,000 on PyPI
staminaStamina wraps Tenacity to provide a…
permissive · top 5,000 on PyPI
gdownDownloads files and folders from Google Drive,…
permissive · top 5,000 on PyPI
checksumdirComputes a single hash digest of all file…
permissive · top 15,000 on PyPI
DownloadKitDownloadKit is a multithreaded file downloader…
permissive · top 15,000 on PyPI