Youtube video downloader with Tkinter UI python project

Python is a high-level general-purpose programming language which is used for various applications. Using python you can make a web application, desktop application, Games, etc. In this python project, we will discuss how to download youtube videos using python and also we will create a nice UI using the Tkinter library.

Youtube is a widely used video-sharing platform downloading a video from youtube is a hectic task. To download a video you need to copy and paste the link to another site or you need to install an extension which will display unwanted ads. To avoid all the headaches and also to develop your programming skill I will show you how to download a youtube video.

Read more..

Let’s get started.

First, download and install the latest version of Python 3 in your computer or laptop. We are going to use “pytube” which is a python library. Python libraries make the programming task easier which allows you to access the program which is already implemented to save lots of time. It is a collection of functions and methods which allows you to code fast. Pytube is a very useful dependency-free library used to download videos from the web.

The best way to install the library is by using pip. PIP refers to Preferred Installer Program which is used to install additional libraries and packages easily using the command line. PIP comes pre-installed with Python 3.4 or greater versions. If you don’t have pip installed, you can download and install pip from this site (

To check the version of pip installed in your computer, open command prompt and type the following command - pip --version then press enter.

Let’s begin the project

import tkinter as tk   #importing tkinter library

from pytube import YouTube #importing the pytube library

def downloadVid():

global E1


yt= YouTube(str(string))

videos = yt.get_videos() #this will return a list to choose the video quality


for v in videos:



n=int(input(“Enter your choice”))

vid = videos[n-1]

destination=str(input(“Enter your destination”))

print(yt.filename+”\n is downloaded”)

Latest projects on Python

Want to develop practical skills on Python? Checkout our latest projects and start learning for free

root=tk.Tk() #initializing root component

w=tk.Label(root,text=”Youtube Downloader”) #widget creation


#entry box is created to past the link


E1.pack(side=tk1.TOP)  #it is organized using pack function

#Button is created so the program is triggered when it is pressed

button=tk.Button(root,text=”Download”.fg=”red”,command=downloadVid )


#When the button is clicked whatever the function inside the command will be executed in our case the command is to download the youtube video.


Now you can run the program and it will start the application and asks you to put the URL in the box. Copy and paste the URL then it will ask you to choose the video quality and give the download location for the video to be saved. Now you can able to see the video is downloaded.

How to build Python projects Did you know

Skyfi Labs helps students learn practical skills by building real-world projects.

You can enrol with friends and receive kits at your doorstep

You can learn from experts, build working projects, showcase skills to the world and grab the best jobs.
Get started today!

Kit required to develop Youtube video downloader with Tkinter UI python project:
Technologies you will learn by working on Youtube video downloader with Tkinter UI python project:
Youtube video downloader with Tkinter UI python project
Skyfi Labs Last Updated: 2022-04-16

Join 250,000+ students from 36+ countries & develop practical skills by building projects

Get kits shipped in 24 hours. Build using online tutorials.

More Project Ideas on Python

Face recognition using Raspberry Pi
Linux Based Medication remainder
Ultrasonic beats player
Automated door opener with lighting control
IoT based theft detection using Raspberry Pi
Wheelchair wih safety system
Raspberry Pi osilloscope
Health monitoring using Raspberry pi
Automatic Green house system
Wheel combined robotic suspension system
Bank Account Management System using SQL and C++
Content Aggregation Project using Python
URL Shortener
Develop An Expense Tracking System using Python
Mp3 Player using Python
Simple Chat room using Python
Folder sorter according to files extensions using Python
Batch Image editor using Python
Password Generator and Manager using Python
Web Scrapper (Amazon Price Tracker)
Bird Species detection using Python
Develop An Online CV Builder using Python
Online Job Portal using Python and SQL database
Social Media Site using Python (Django)
Driver Drowsiness detection using Python
Traffic recognition using python
Website Blocker using python
Speech Emotion Recognition using Python
Speed Typing test with Python
Gender and Age Detection using Python
Pharmacy management using Python
Virtual Notebook - Python project
Find My Professor
How to Develop a TIC TAC TOE game using Python
Admission tracking system
Assignment submission system using Python
Smart feedback system using Python
Data collection tool using Python
Language translator and converter using Python
Automatic Brand LOGO detection using Python
Rock, paper, scissor game using python
Youtube video downloader with Tkinter UI python project
Instagram bot using python
Desktop notifier app using python
Spotify song downloader using python
Jarvis Personal assistant using Python
Sound processing python project
Develop a Supermarket Billing System with Python
Desktop voice assistant project

Subscribe to receive more project ideas

Stay up-to-date and build projects on latest technologies