A versatile tool to download YouTube videos, audio, and subtitles using Python. This project includes both a command-line interface (CLI) and a Flask web application for user-friendly access.
- Download Videos: Download videos in the highest resolution or select from available qualities.
- Download Audio: Option to download audio only.
- Download Subtitles: Download subtitles if available.
- Search Functionality: Search for videos directly from the application.
- Batch Downloads: Download multiple videos at once by entering multiple URLs.
- Web Interface: Access the downloader through a web browser using Flask.
Ensure you have Python 3.x installed on your machine. You can download it from python.org.
git clone https://github.com/mmabiaa/youtube-video-downloader-tool.git
cd youtube-video-downloader-tool
python -m venv venv
source venv/bin/activate # On Windows use: venv\Scripts\activate
pip install -r requirements.txt
To run the command-line version:
- Download Videos:
python downloader.py
Follow the prompts to enter one or more YouTube video URLs.
- Search for Videos:
python search.py
Enter your search query to find videos on YouTube.
To run the Flask web application:
- Start the Flask App:
python app.py
- Access the Application:
Open your web browser and navigate to http://127.0.0.1:5000/
.
- Download Videos via Web Interface:
Enter a YouTube video URL in the provided input field and click "Download".
- To download a single video:
python downloader.py
Enter YouTube video URL: https://www.youtube.com/watch?v=VIDEO_ID
- To download multiple videos:
python downloader.py
Enter YouTube video URLs (comma-separated): https://www.youtube.com/watch?v=VIDEO_ID1, https://www.youtube.com/watch?v=VIDEO_ID2
Contributions are welcome! If you would like to contribute to this project, please follow these steps CONTRIBUTION:
- Fork the repository.
- Create a new branch (
git checkout -b feature-branch
). - Make your changes and commit them (
git commit -m 'Add new feature'
). - Push to the branch (
git push origin feature-branch
). - Create a pull request.
This project is licensed under the MIT License.
- pytube for providing an easy way to download videos from YouTube.
- Flask for creating the web application.
For any inquiries or issues, please open an issue in this repository or contact me directly.
Last updated: January 10, 2025