Back to skills
extension
Category: Data & AnalyticsNo API key required

gallery-dl

Download and batch archive image galleries from 100+ sites including Reddit, Twitter, Instagram, Pixiv, and Danbooru with customizable options.

gallery-dl

Download image galleries and collections from 100+ sites.

When This Skill Activates

This skill triggers when user wants to download images from Reddit, Twitter, Instagram, Pixiv, Danbooru, or other supported sites.

Reasoning Framework

| Step | Action | Why | |------|--------|-----| | 1 | INSTALL | Install gallery-dl via pip | | 2 | AUTH | Configure authentication if needed | | 3 | EXTRACT | Determine site and URL type | | 4 | DOWNLOAD | Fetch images with options | | 5 | ORGANIZE | Save to appropriate folder |


Install

pip install gallery-dl

Decision Tree

What are you trying to do?

├── Download from Reddit
│   └── Use: gallery-dl "https://www.reddit.com/r/subreddit/"
│
├── Download from Twitter/X
│   └── Use: gallery-dl "https://twitter.com/user/media"
│
├── Download from Pixiv
│   └── Use: gallery-dl "https://www.pixiv.net/users/12345"
│
├── Download from Danbooru
│   └── Use: gallery-dl "https://danbooru.donmai.us/posts?tags=tag"
│
├── Batch download
│   └── Use: gallery-dl "URL" --limit 10
│
└── Custom filename
    └── Use: gallery-dl "URL" -f "{id}.{extension}"

Supported Sites

Reddit, Twitter/X, Instagram, Tumblr, Pixiv, Danbooru, Gelbooru, Furbooru, ArtStation, DeviantArt, Flickr, Newgrounds, HBO, TikTok, YouTube, and 100+ more.

Full list: https://github.com/mikf/gallery-dl#supported-services


Basic Usage

Command

gallery-dl "URL" [options]

Examples

# Download from Reddit
gallery-dl "https://www.reddit.com/r/wallpapers/"

# Download to specific folder
gallery-dl "URL" -D /path/to/folder

# Download specific user's posts
gallery-dl "https://twitter.com/username/media"

# Download from Pixiv artist
gallery-dl "https://www.pixiv.net/users/12345"

# Download from Danbooru tags
gallery-dl "https://danbooru.donmai.us/posts?tags=cat"

Options

| Flag | Description | Default | |------|-------------|---------| | -D, --directory PATH | Download location | ./gallery-dl | | -f, --filename FORMAT | Filename template | {id}.{extension} | | --range RANGE | Download range (e.g., 1-10) | all | | --limit N | Limit number of downloads | no limit | | --username USER | Login username | - | | --password PASS | Login password | - | | --netrc | Use .netrc for auth | false |


Filename Templates

# Default (id.extension)
gallery-dl "URL" -f "{id}.{extension}"

# By date (YYYY/id.extension)
gallery-dl "URL" -f "{date:%Y}/{id}.{extension}"

# By site (site/id.extension)
gallery-dl "URL" -f "{domain}/{id}.{extension}"

# Original filename
gallery-dl "URL" -f "/O"

Authentication

Many sites need login. Choose one method:

1. Command Line

gallery-dl "URL" --username USER --password PASS

2. .netrc File

Create ~/.netrc:

machine twitter.com
login username
password password

3. Config File

Create ~/.config/gallery-dl/config.json:

{
    "extractor": {
        "twitter": {
            "username": "user",
            "password": "pass"
        },
        "pixiv": {
            "username": "user", 
            "password": "pass"
        }
    }
}

Common Examples

# Reddit subreddit
gallery-dl "https://www.reddit.com/r/earthporn/" -D ./earthporn

# Twitter user media
gallery-dl "https://twitter.com/elonmusk/media" -D ./elon

# Pixiv artist
gallery-dl "https://www.pixiv.net/users/12345" -D ./pixiv

# Danbooru tag
gallery-dl "https://danbooru.donmai.us/posts?tags=cat" -D ./cat

# Download only first 10
gallery-dl "URL" --limit 10

# Download range
gallery-dl "URL" --range 1-50

Troubleshooting

Problem: "gallery-dl: command not found"

  • Cause: Not installed
  • Fix: pip install gallery-dl

Problem: "HTTP Error 401: Unauthorized"

  • Cause: Need login
  • Fix: Configure authentication (--username/--password or config)

Problem: "HTTP Error 403: Forbidden"

  • Cause: Rate limited or private content
  • Fix: Wait or check credentials

Problem: "No images found"

  • Cause: Wrong URL or no media
  • Fix: Verify URL is correct for the site

Problem: "Permission denied"

  • Cause: No write permission
  • Fix: Check folder permissions or use -D with writable path

Self-Check

  • [ ] gallery-dl installed: gallery-dl --version
  • [ ] URL is correct for the site
  • [ ] For private sites: authentication configured
  • [ ] Output directory exists and is writable
  • [ ] Rate limiting respected (don't spam)

Quick Reference

| Task | Command | |------|---------| | Download Reddit | gallery-dl "https://www.reddit.com/r/sub/" | | Download Twitter | gallery-dl "https://twitter.com/user/media" | | Download Pixiv | gallery-dl "https://www.pixiv.net/users/12345" | | Custom folder | gallery-dl "URL" -D ./folder | | Limit 10 | gallery-dl "URL" --limit 10 | | Custom name | gallery-dl "URL" -f "{id}.{extension}" |