A Qt5-based GUI application for downloading multiple videos simultaneously using yt-dlp. Available as both a standalone executable and Python script.
For the easiest experience, you can download the pre-built executable that includes everything you need:
Download BatchVideoDownloader.exe (Replace with actual download link when available)
The standalone executable includes:
- ✅ Python runtime
- ✅ PyQt5 GUI framework
- ✅ yt-dlp.exe bundled
- ✅ All dependencies
No installation required! Just download and run.
- Python 3.7+ installed on your system
- Git (optional, for cloning the repository)
- Clone or download this repository
- Run the build script:
# On Windows build.bat # On Linux/Mac python build_executable.py
The build process will:
- Install all required dependencies
- Download yt-dlp.exe automatically (if not present)
- Create a standalone executable in the
dist/folder
-
Install Dependencies:
pip install -r requirements.txt
-
Ensure yt-dlp.exe is present:
- The build script handles this automatically
- Or manually download from yt-dlp releases
-
Run from source:
python batch_video_downloader.py
Simply double-click BatchVideoDownloader.exe to launch the application.
python batch_video_downloader.py- Video URLs: Enter video URLs in the text area, one per line
- Output Directory: Select where to save downloaded videos (default:
./downloads) - Max Concurrent Downloads: Set how many videos to download simultaneously (1-10, default: 3)
- Start Downloads: Begin the batch download process
- Cancel Downloads: Stop ongoing downloads
- Clear All: Reset the interface
- ✅ Standalone Executable: No Python installation required
- ✅ Bundled yt-dlp: No need to download or manage yt-dlp.exe separately
- ✅ Batch Processing: Download multiple videos simultaneously
- ✅ Threading: Configurable concurrent downloads (1-10 workers)
- ✅ Progress Tracking: Real-time status updates for each download
- ✅ Error Handling: Detailed error messages for failed downloads
- ✅ User-Friendly GUI: Clean, modern interface with progress indicators
- ✅ Flexible Output: Choose custom download directory
- ✅ Cancel Support: Stop downloads in progress
The application supports any video site that yt-dlp supports, including:
- YouTube
- Vimeo
- Dailymotion
- TikTok
- And many more...
- URL Format: Make sure URLs are complete and valid
- Concurrent Downloads: Start with 3 concurrent downloads; increase if your internet can handle more
- Output Directory: Make sure you have write permissions to the selected directory
- Large Files: Be aware of disk space when downloading multiple large videos
The standalone executable (BatchVideoDownloader.exe) can be distributed as a single file without requiring:
- Python installation
- Separate yt-dlp.exe download
- Any additional setup
Perfect for sharing with non-technical users!
Error: "yt-dlp.exe not found"
- This shouldn't occur with the standalone executable
- For source builds, ensure the build process completed successfully
Error: "Could not create output directory"
- Check that you have write permissions to the selected directory
Downloads failing
- Verify the URLs are valid and accessible
- Check your internet connection
- Some sites may have rate limiting
You can customize the build by modifying build_executable.py:
- Add an icon: Replace
--icon=NONEwith--icon=your_icon.ico - Change executable name: Modify
--name=BatchVideoDownloader - Add additional files: Use more
--add-dataparameters
https://www.youtube.com/watch?v=dQw4w9WgXcQ
https://www.youtube.com/watch?v=9bZkp7q19f0
https://vimeo.com/123456789