- Rename node display names for better searchability: - Gallery-dl Downloader → Social Media Downloader (gallery-dl) - Yt-dlp Downloader → YouTube Downloader (yt-dlp) - Add Instagram Downloads section to README with: - Recommended settings (config file with cookies) - Why browser cookies are problematic (admin/closed browser) - Setup instructions for Instagram authentication - Cookie expiration notes - Update tooltips to recommend config file for Instagram - Improve troubleshooting section with better solutions - Tilda CDN support improvements: - Add _upgrade_tilda_url() for full-res URL conversion - Add tildacdn.com to trusted CDN list - Extract data-img-zoom-url, data-original, data-src attributes - Skip size filtering for items marked as full-res - Crawling improvements: - Add crawl_subfolders option (subfolder per page) - Add skip_first_page_download option - Add link_include_pattern and link_exclude_pattern - Increase max_pages default to 50, max to 500 - Fix batch_size=0 ValueError in parallel downloads
Download Tools for ComfyUI
ComfyUI custom nodes for downloading media from 1000+ websites including Instagram, Reddit, Twitter, YouTube, TikTok, and more.
🎉 Features
-
Gallery-dl Node - Download images and videos from 100+ websites
- Instagram, Reddit, Twitter/X, DeviantArt, Pixiv, and more
- Supports authentication via browser cookies
- Automatic file organization
- Download archive to avoid duplicates
-
Yt-dlp Node - Download videos and audio from 1000+ platforms
- YouTube, TikTok, Vimeo, Twitch, and more
- Multiple quality options
- Audio extraction support
- Playlist support
📦 Installation
Using ComfyUI Manager (Recommended)
- Open ComfyUI Manager
- Search for "Download Tools"
- Click Install
Manual Installation
-
Clone or download this repository to your ComfyUI custom_nodes folder:
cd ComfyUI/custom_nodes git clone https://github.com/EricRollei/download-tools.git -
Install dependencies:
# Windows (using ComfyUI's Python) .\ComfyUI\python_embeded\python.exe -m pip install -r download-tools\requirements.txt # Or using system Python pip install -r download-tools/requirements.txt -
(Optional) Install FFmpeg for audio extraction:
- Windows:
choco install ffmpegor download from https://ffmpeg.org/ - macOS:
brew install ffmpeg - Linux:
apt-get install ffmpeg
- Windows:
-
Restart ComfyUI
🚀 Quick Start
Gallery-dl Downloader
- Add "Gallery-dl Downloader" node to your workflow
- Enter a URL (e.g., Instagram profile, Reddit post)
- Configure options:
- Enable
use_browser_cookiesfor private content - Enable
organize_filesto sort by type - Enable
use_download_archiveto avoid duplicates
- Enable
- Execute!
Supported Sites: Instagram, Reddit, Twitter, DeviantArt, Pixiv, Tumblr, Pinterest, Flickr, and 90+ more. See gallery-dl supported sites.
Yt-dlp Downloader
- Add "Yt-dlp Downloader" node to your workflow
- Enter a URL (e.g., YouTube video)
- Choose format:
best- Best quality videoaudio-only- Extract audio (requires FFmpeg)- Custom format string
- Execute!
Supported Sites: YouTube, TikTok, Vimeo, Twitch, Facebook, Instagram, Twitter, and 1000+ more. See yt-dlp supported sites.
� Instagram Downloads
For Instagram, use Gallery-dl as it is better. Gallery-dl has native Instagram API support, handles pagination, rate limits, and can download posts, stories, reels, and highlights.
Recommended Settings
| Setting | Value | Notes |
|---|---|---|
config_path |
./configs/gallery-dl.conf |
Contains your Instagram cookies |
cookie_file |
(leave empty) | Cookies are in config file |
use_browser_cookies |
❌ False | Browser cookies require admin access |
Why Not Browser Cookies?
- Chrome/Edge: Require admin privileges AND browser must be closed
- Firefox: Works without admin, but less reliable than config file
- Config file: Most reliable method - always works
Setting Up Instagram Authentication
- Export your Instagram cookies from Chrome/Firefox using "Get cookies.txt LOCALLY" extension
- Copy the key cookies to
configs/gallery-dl.confin theinstagramsection:"instagram": { "cookies": { "sessionid": "YOUR_SESSION_ID", "ds_user_id": "YOUR_USER_ID", "csrftoken": "YOUR_CSRF_TOKEN", "mid": "YOUR_MID_VALUE" } } - Use in node:
- Set
config_pathto./configs/gallery-dl.conf - Leave
cookie_fileempty - Set
use_browser_cookiesto False
- Set
Cookie Expiration
Instagram session cookies expire after ~1 year. If downloads start failing with 401 errors, export fresh cookies from your browser.
�🔐 Authentication
Many sites require authentication for private content:
Method 1: Browser Cookies (Automatic)
- Log into the website in your browser
- Enable
use_browser_cookiesin the node - Select your browser (Chrome, Firefox, Edge, etc.)
- The node will automatically use your login session
Method 2: Export Cookies
- Install browser extension: "Get cookies.txt LOCALLY"
- Log into the website
- Export cookies
- Save to
configs/instagram_cookies.json(or site-specific file) - Set
cookie_fileparameter in the node
📁 Configuration
Config files are stored in download-tools/configs/:
gallery-dl.conf- Gallery-dl settingsgallery-dl-browser-cookies.conf- Browser cookie configurationyt-dlp.conf- Yt-dlp default settingsyt-dlp-audio.conf- Audio extraction presetyt-dlp-hq.conf- High quality preset
You can create custom config files and reference them in the nodes.
📚 Documentation
Detailed guides available in Docs/:
gallery_dl_node_complete_guide.md- Complete gallery-dl usageyt_dlp_node_complete_guide.md- Complete yt-dlp usagegallery_dl_authentication_guide.md- Authentication setupgallery_dl_advanced_options_guide.md- Advanced features
🐛 Troubleshooting
"gallery-dl not found"
Already installed! It's a Python package. The node will find it automatically.
"Chrome cookies not accessible"
Chrome locks its cookie database while running. Solutions:
- Close Chrome completely before running
- Run ComfyUI as administrator
- Use Firefox instead (doesn't require admin)
- Best: Use config file with cookies (see Instagram section above)
"Instagram/Reddit downloads fail"
Authentication required:
- Use
config_path: ./configs/gallery-dl.confwith cookies - Or enable
use_browser_cookieswith Firefox - 401 Unauthorized = expired cookies, export fresh ones
"CUDA out of memory" / "FFmpeg not found"
For audio extraction:
- Install FFmpeg separately
- Or use video formats
⚙️ Requirements
- Python 3.10+
- ComfyUI
- gallery-dl (auto-installed)
- yt-dlp (auto-installed)
- FFmpeg (optional, for audio extraction)
📄 License
Copyright (c) 2025 Eric Hiss. All rights reserved.
Dual License:
- Non-Commercial Use: Licensed under Creative Commons Attribution-NonCommercial 4.0 International License (CC BY-NC 4.0)
- Commercial Use: Requires a separate commercial license. Contact: eric@historic.camera or eric@rollei.us
See LICENSE.md for full terms.
Third-Party Tools
- gallery-dl (GNU GPL v2) by Mike Fährmann: https://github.com/mikf/gallery-dl
- yt-dlp (Unlicense/Public Domain): https://github.com/yt-dlp/yt-dlp
See CREDITS.md for complete dependency list.
👥 Contributing
Contributions welcome! See CONTRIBUTING.md for guidelines.
📧 Contact
- Author: Eric Hiss
- GitHub: EricRollei
- Email: eric@historic.camera, eric@rollei.us
🙏 Acknowledgments
- ComfyUI community for the platform
- Mike Fährmann for gallery-dl
- yt-dlp contributors for the excellent video downloader
Ready to download! 🚀 Add the nodes to your workflow and start downloading media from across the web.