This project is a YouTube video downloader web application built using the Flask framework. It allows users to input a YouTube video URL and download the video in the available formats. This README.md file provides an overview of the project, installation instructions, usage guide, and potential areas for improvement.
🎉 Input a valid YouTube video URL.
📺 Choose from a list of available formats.
⬇️ Download the selected video to your local machine.
Follow these steps to set up and run the YouTube Video Downloader:
-
Clone the repository:
git clone https://github.com/EmileGreyling/YouTube-Downloader-In-Flask.git
-
Navigate to the project directory:
cd YouTube-Downloader-In-Flask
-
Create a virtual environment
python3 -m venv env
-
Activate the virtual environment:
- On Windows:
env\Scripts\activate
- On macOS and Linux:
source env/bin/activate
- On Windows:
-
Install required dependencies:
pip install -r requirements.txt
-
Run the Flask application: ``bash flask run
-
Open a web browser to
http://127.0.0.1:5000
to access the application.
- Enter a valid YouTube video URL in the input field.
- Select the desired format (mp4 or mp3)
- Click the "Download" button and wait for the video to downlaod.
- The file will be downloaded to your default download location.
Contributions are welcome! If you'd like to contribute to this project, please follow these steps:
- Fork the repository.
- Create a new branch for your feature or bug fix.
- Make your changes and test them thoroughly.
- Submit a pull request explaining your changes.
Here are some potential areas for improvement in the project:
-
User Interface: Enhance the user interface to make it more intuitive and visually appealing using HTML, CSS, and JavaScript.
-
Error Handling: Implement better error handling for cases where the provided URL is invalid or the video format is not supported.
-
Download Progress: Provide real-time download progress to the user.
-
Support for Other Platforms: Extend the application's functionality to support video downloads from other platforms.