This is a Python Django-based web application designed to provide users with an intuitive interface to download videos from YouTube and manage them effectively. The project is modular, with clear separation of concerns for templates, views, and static files.
- Download videos from YouTube using a simple interface.
- Generate video transcripts if available.
- View downloaded videos with options for trimming and managing.
- Responsive design for seamless usage across devices.
The home page provides an overview of the application and a link to the video downloader feature.
This page allows users to input a YouTube URL, select start time, specify a range, and choose to either download the video or fetch its transcript.
- Python 3.10 or above
- Django 5.1
- A virtual environment tool (e.g.,
venv
orvirtualenv
)
-
Clone the Repository
git clone https://github.com/your-repository/youtube-downloader.git cd youtube-downloader
-
Set Up a Virtual Environment
python -m venv myenv source myenv/bin/activate # On Windows: myenv\Scripts\activate
-
Install Dependencies
pip install -r requirements.txt
-
Configure the Database Apply migrations to set up the SQLite database:
python manage.py migrate
-
Run the Development Server Start the server to view the application:
python manage.py runserver
Access the application at: http://127.0.0.1:8000/
├── downloader
│ ├── static
│ │ ├── images
│ │ │ ├── Screenshot home.png
│ │ │ ├── Screenshot downloader video.png
│ │ └── globalstyles.css
│ ├── templates
│ │ ├── master.html
│ │ ├── main.html
│ │ ├── video_downloader.html
│ │ └── container_video.html
│ ├── views.py
│ └── urls.py
├── youtube_downloader
│ ├── settings.py
│ ├── urls.py
│ ├── wsgi.py
│ └── asgi.py
└── manage.py
- Navigate to the home page to get started.
- Click the Video Downloader link to access the main functionality.
- Enter a YouTube URL.
- Specify the start time (in MM:SS format) and duration (in seconds).
- Select an action:
- Download Video: Download the specified video segment.
- Fetch Transcript: Generate a transcript if available.
- View downloaded videos with options to preview, trim, and save locally.