Skip to main content

A powerful CLI tool to browse and bulk download HD photo galleries from Ragalahari.com

Project description

Ragalahari Gallery Downloader

Python 3.7+ License: MIT PRs Welcome

A powerful, feature-rich command-line tool to browse and bulk download HD photo galleries from Ragalahari.com. Search for actors/actresses, browse latest galleries, select multiple galleries with range syntax, and download full-resolution images with parallel threads.

ragalahari-dl demo


Features

  • Actor Search — Search by name with alphabetical index browsing
  • Latest Galleries — Quick access to newest galleries on the site
  • Gallery Browser — Browse actor galleries with ID labels and pagination
  • Batch Download — Select multiple galleries using range syntax (1-50, 3,5,7, 1-10,15-20, all)
  • Download All — One-click download of every gallery for an actor
  • Category Browsing — Events, Exclusive Shoots, Movie Stills, Posters
  • HD Images — Automatically extracts full-resolution images from thumbnails
  • Multi-page Support — Detects and scans all pages in a gallery
  • Parallel Downloads — Configurable multi-threaded downloads (default: 5 threads)
  • Progress Tracking — Real-time progress bars, download stats, file sizes
  • Resume Support — Skips already-downloaded images
  • Professional CLI — Color-coded output, paginated lists, clean menus
  • Simple + Advanced Modes — Easy mode for quick use, advanced for power users
  • Configurable — Change download folder, thread count, and delay from within the app

Screenshots

     ┌─┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬─┐
     │ │▓▓│  │▓▓│  │▓▓│  │▓▓│  │▓▓│  │▓▓│  │▓▓│ │
     ├─┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴─┤
     │       ___                                  │
     │      (o o)    /\    Search . Browse         │
     │      __|__   /  \   Select . Download       │
     │     /     \ / HD \  Batch  . Resume         │
     │    / [====] \    /                          │
     │    \       / \  /   ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓        │
     │     \_____/   \/    ▓ RAGALAHARI  ▓        │
     │      |   |          ▓   GALLERY   ▓        │
     │     /|   |\         ▓  DOWNLOAD   ▓        │
     │    / |   | \        ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓        │
     │   /__|   |__\                               │
     ├─┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬─┤
     │ │▓▓│  │▓▓│  │▓▓│  │▓▓│  │▓▓│  │▓▓│  │▓▓│ │
     └─┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴─┘

╔══════════════════════════════════════════════════════════╗
║                                                          ║
║   RAGALAHARI  GALLERY  DOWNLOADER                v2.0   ║
║                                                          ║
║   Bulk HD Photo Downloader  •  ragalahari.com            ║
║                                                          ║
╚══════════════════════════════════════════════════════════╝

  ⚡ 3 incomplete download(s) found!
  Select 'Resume Downloads' below to continue.

  Main Menu
  ─────────────────────────────────────────────
  R  Resume Downloads   Continue where you left off
  1  Latest Galleries   New & trending on the site
  2  Simple Mode        Search, select, download
  3  Advanced Mode      Batch, bulk, categories
  0  Exit
  ── ADVANCED MODE ──
  1  Batch Download Galleries (select multiple with ranges)
  2  Download ALL Galleries for an Actor
  3  Batch from Gallery URLs (paste multiple URLs)
  4  Browse by Category (latest, events, photoshoots)
  5  Inspect Page (debug HTML structure)
  6  Settings
  0  Back to main menu

Installation

Prerequisites

  • Python 3.7 or higher

Quick Start

# Clone the repository
git clone https://github.com/corinovate/ragalahari-dl.git
cd ragalahari-dl

# Install dependencies
pip install -r requirements.txt

# Run
python ragalahari_dl.py

Install as a package (optional)

pip install .
ragalahari-dl

Standalone Executable (no Python needed)

Download ragalahari-dl.exe from the Releases page — just double-click and run, no Python installation required.

To build the .exe yourself:

pip install pyinstaller
python build.py

The executable will be in the dist/ folder.

Usage

Simple Mode — Search and Download

  1. Run the script: python ragalahari_dl.py
  2. Select Simple Mode (option 2)
  3. Choose Search & Download (option 1)
  4. Type an actor/actress name (e.g., Kajal)
  5. Select the actor from results
  6. Pick a gallery and confirm download

Latest Galleries

  1. Select Latest Galleries (option 1) from main menu
  2. Browse the latest galleries
  3. Pick one or select multiple with ranges

Batch Download (Advanced Mode)

  1. Select Advanced Mode (option 3)
  2. Choose Batch Download Galleries (option 1)
  3. Search for an actor
  4. Use range syntax to select galleries:
  Select gallery(s) > 1-50        # galleries 1 through 50
  Select gallery(s) > 3,5,7,12    # specific galleries
  Select gallery(s) > 1-10,15-20  # mixed ranges
  Select gallery(s) > all         # everything

Direct URL Download

If you already have a gallery URL:

# Simple Mode > Paste Gallery URL (option 2)
# Paste: https://www.ragalahari.com/actress/172760/gallery-name.aspx

Browse by Category

Advanced Mode lets you browse:

  • Latest Galleries
  • Actress Galleries
  • Events & Functions
  • Exclusive Shoots
  • Movie Stills
  • Movie Posters

Configuration

Access settings from Advanced Mode > Settings (option 6):

Setting Default Description
Download folder ./downloads Where images are saved
Parallel threads 5 Concurrent download threads (1-20)
Page delay 0.5s Delay between page fetches

Images are saved in: downloads/<ActorName>/<GalleryName>/

How It Works

  1. Search: Loads the alphabetical star index, navigates to the correct letter page, and filters actors by name
  2. Gallery listing: Parses the actor's profile page for all gallery links with numeric IDs
  3. Image extraction: Finds thumbnail images inside <div id="galdiv"> and converts thumbnail URLs to full-size by removing the t suffix (e.g., image1t.jpgimage1.jpg)
  4. Pagination: Detects multi-page galleries via <td id="pagingCell"> navigation links
  5. Download: Parallel threaded downloads with retry logic, size validation, and duplicate detection

Project Structure

ragalahari-dl/
├── ragalahari_dl.py     # Main application
├── requirements.txt      # Python dependencies
├── setup.py              # Package installer
├── LICENSE               # MIT License
├── CHANGELOG.md          # Version history
├── README.md             # This file
└── downloads/            # Default download directory (created at runtime)

Contributing

Contributions are welcome! Here are some ideas:

  • Add support for more gallery types
  • GUI version (Tkinter/PyQt)
  • Download queue with pause/resume
  • Image metadata extraction
  • Proxy support
  • Export gallery lists to JSON/CSV

How to contribute

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

Disclaimer

This tool is for personal use only. Please respect the website's terms of service and the intellectual property rights of content creators. Do not use this tool for commercial purposes or to redistribute copyrighted content. Be mindful of server load — the tool includes built-in delays between requests.

License

This project is licensed under the MIT License — see the LICENSE file for details.

Acknowledgments

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ragalahari_dl-2.0.0.tar.gz (18.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ragalahari_dl-2.0.0-py3-none-any.whl (19.0 kB view details)

Uploaded Python 3

File details

Details for the file ragalahari_dl-2.0.0.tar.gz.

File metadata

  • Download URL: ragalahari_dl-2.0.0.tar.gz
  • Upload date:
  • Size: 18.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.4

File hashes

Hashes for ragalahari_dl-2.0.0.tar.gz
Algorithm Hash digest
SHA256 f8b16dbc33a228ce1798f976eb97327bc4366cff210abc5a48169a590358ee86
MD5 31fbffff08ee8f452ad67431db3e96af
BLAKE2b-256 f4dc2a25b9c1ada26a45e91a77ebd415b0c7de6c4dceada3840a76a85a8661ec

See more details on using hashes here.

File details

Details for the file ragalahari_dl-2.0.0-py3-none-any.whl.

File metadata

  • Download URL: ragalahari_dl-2.0.0-py3-none-any.whl
  • Upload date:
  • Size: 19.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.4

File hashes

Hashes for ragalahari_dl-2.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 adc023b47311f0b4227145db271dff366348aef56231977d3ab30e7f359c6d87
MD5 5364dd488e7748614c23a72e6d16e15f
BLAKE2b-256 9e4e0b258c433bf78ccae71074116ecc991b7525e5f49942567192326b2e8c80

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page