A Python application to download transcripts from YouTube videos and playlists with both web and desktop interfaces.
- 🎬 Download transcripts from individual YouTube videos or entire playlists
- 🌐 Modern web interface accessible from any browser
- 🖥️ Desktop GUI application (tkinter)
- 📝 Command-line interface for automation
- 📦 Export transcripts as individual text files or ZIP archive
- 🎯 Select which video to start downloading from in playlists
- 📊 Real-time progress tracking and detailed logs
- 🎨 Beautiful, responsive design
- Clone the repository:
git clone https://github.com/justthatuser/youtube-transcripts.git
cd youtube-transcripts- Install dependencies:
pip install youtube-transcript-api pytube requests beautifulsoup4 flask flask-corsSimply run the main application:
python main.pyThis will automatically start the web server and open your browser to the interface.
- Start the web server:
python web_trans.py-
Open your browser and go to:
http://localhost:5000 -
Paste a YouTube video or playlist URL and click "Load"
-
Select starting video (for playlists) and click "Start Download"
-
Download transcripts as ZIP file when complete
python gui_trans.pyEdit py_trans.py to set your playlist URL and run:
python py_trans.py- Python 3.7+
- youtube-transcript-api
- pytube
- requests
- beautifulsoup4
- flask (for web interface)
- flask-cors (for web interface)
- tkinter (usually comes with Python, for desktop GUI)
Each transcript is saved as a text file with:
- Video ID
- Video title
- Video URL
- Language and language code
- Full transcript text
Files are named: ##_VideoTitle.txt
- Rate limiting is implemented (1 second delay between videos) to avoid IP blocking
- If YouTube blocks your IP, wait 15-30 minutes or use a VPN
- Transcripts are only available for videos that have captions enabled
MIT License
Created by justthatuser