A lightweight, high-performance command-line tool written in Rust to automatically download all unique posts (videos and images) from a public Instagram account.
Standard headless scrapers are often rate-limited or blocked by Instagram's login walls. ig_dl works around this by:
- Identifying the internal numeric User ID of the target account by mimicking an official Instagram mobile client request.
- Utilizing the powerful gallery-dl under the hood to bypass standard frontend restrictions and download directly via the
id:extraction method.
- Rust: Ensure you have
cargoandrustcinstalled. - gallery-dl:
ig_dlrequiresgallery-dlto be installed and available in your system's PATH.
Clone the repository and build the binary:
git clone https://github.com/ajsb85/ig_dl.git
cd ig_dl
cargo build --releaseThe compiled binary will be available in target/release/ig_dl.
Simply run the binary and pass the target Instagram username as an argument:
./ig_dl <username>./ig_dl mnfilmandphotosThe downloads will automatically be saved into a structured directory created by gallery-dl (e.g., ./gallery-dl/instagram/<username>/).
This project is licensed under the MIT License.