A powerful CLI tool to browse and bulk download HD photo galleries from Ragalahari.com
Project description
Ragalahari Gallery Downloader
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.
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
- Run the script:
python ragalahari_dl.py - Select Simple Mode (option 2)
- Choose Search & Download (option 1)
- Type an actor/actress name (e.g.,
Kajal) - Select the actor from results
- Pick a gallery and confirm download
Latest Galleries
- Select Latest Galleries (option 1) from main menu
- Browse the latest galleries
- Pick one or select multiple with ranges
Batch Download (Advanced Mode)
- Select Advanced Mode (option 3)
- Choose Batch Download Galleries (option 1)
- Search for an actor
- 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
- Search: Loads the alphabetical star index, navigates to the correct letter page, and filters actors by name
- Gallery listing: Parses the actor's profile page for all gallery links with numeric IDs
- Image extraction: Finds thumbnail images inside
<div id="galdiv">and converts thumbnail URLs to full-size by removing thetsuffix (e.g.,image1t.jpg→image1.jpg) - Pagination: Detects multi-page galleries via
<td id="pagingCell">navigation links - 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
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - 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
- Ragalahari.com for hosting amazing photography
- Beautiful Soup for HTML parsing
- Requests for HTTP handling
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f8b16dbc33a228ce1798f976eb97327bc4366cff210abc5a48169a590358ee86
|
|
| MD5 |
31fbffff08ee8f452ad67431db3e96af
|
|
| BLAKE2b-256 |
f4dc2a25b9c1ada26a45e91a77ebd415b0c7de6c4dceada3840a76a85a8661ec
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
adc023b47311f0b4227145db271dff366348aef56231977d3ab30e7f359c6d87
|
|
| MD5 |
5364dd488e7748614c23a72e6d16e15f
|
|
| BLAKE2b-256 |
9e4e0b258c433bf78ccae71074116ecc991b7525e5f49942567192326b2e8c80
|