Создание простого загрузчика видео с YouTube с помощью python

Если вы уже пытались скачать видео с YouTube, то вам знакомо разочарование от просмотра миллиона рекламных объявлений, чтобы получить файл размером в два мегабайта. В этой статье мы создадим собственный простой загрузчик видео с YouTube с помощью python.

Требования

Прежде чем мы начнем, у вас должны быть:

  • python. Если нет, следуйте этому руководству, чтобы установить его.
  • редактор кода
  • Pytube
  • Tkinter

Pytube — это легкая библиотека Python для загрузки видео с youtube. Tkinter — это стандартная библиотека GUI (графический интерфейс пользователя) для python.

Чтобы установить Pytube и Tkinter, выполните следующие команды в CLI (интерфейс командной строки) с помощью pip installer.

pip install tk
Pip install pytube

Войти в полноэкранный режим Выйти из полноэкранного режима

Если вы используете python 2.x, установите Tkinter как Tkinter (обратите внимание на заглавную букву T).

pip install Tkinter

Войти в полноэкранный режим Выйти из полноэкранного режима

Для создания загрузчика YouTube мы выполним следующие шаги:

  1. Импортируйте необходимые библиотеки
  2. Создать окно отображения
  3. Создать ввод ссылки
  4. Создание функции загрузки

Шаг 1: Импорт необходимых библиотек

Нам нужно импортировать модули, которые мы установили.

from tkinter import * # import all libraries from tkinter module
from pytube import YouTube # import YouTube library from pytube module

Вход в полноэкранный режим Выйти из полноэкранного режима

Шаг 2: Создайте окно отображения

root = Tk() # initializes tkinter to create display window
root.geometry('400x250') # width and height of the window
root.resizable(0, 0) # sets fix size of window
root.title(' our awesome youtube downloader') # gives the window a title

Label(root,text = 'Youtube Video Downloader', font ='arial 20 bold').pack()
# The rest of the code 

root.mainloop() # executes when we want to run the program

Войдите в полноэкранный режим Выход из полноэкранного режима
  • Виджет Label() выше отображает тексты, которые пользователи не могут изменять.
  • root — это имя окна.

Когда мы запускаем приведенный выше код, он дает нам пустое окно. Оставшийся код будет находиться между Tk() и mainloop(). В результате мы получим окно, как показано ниже:

Шаг 3: Создание записи ссылки

Следующим шагом будет создание записи, в которую мы сможем вставить ссылку на YouTube.

var = StringVar() # specifies variable type
Label(root, text = 'Paste Link Here:', font = 'arial 15 bold').place(x= 100 , y = 60)

label = Message( root, textvariable = var, relief = RAISED )
link_enter = Entry(root, width = 70,textvariable = var).place(x = 32, y = 90)

var.set('Paste Link Here:')

Войти в полноэкранный режим Выйти из полноэкранного режима
  • var сохраняет введенный URL в виде строки.
  • Виджет Entry() используется, когда мы хотим создать текстовое поле.
  • textvariable используется для получения текущего значения текстовой переменной для виджета entry.
  • place() используется для позиционирования виджета в определенном месте.

Вывод приведенного выше кода выглядит так, как показано на рисунке ниже:

Шаг 4: Создание функции загрузки

Теперь, когда наше окно готово к работе, нам нужно создать функцию для загрузки видео. Нам также нужна кнопка, которая при нажатии будет вызывать эту функцию.

def Downloader():
    url =YouTube(str(var.get())) # gets youtube link from link entered and converts it to string
    video = url.streams.first() # video is downloaded in the first stream the video is in
    video.download() # initializes the download
    Label(root, text = 'DOWNLOADED', font = 'arial 15').place(x= 180 , y = 210) # shows "DOWNLOADED" when the download is complete
Button(root,text = 'DOWNLOAD', font = 'arial 15 bold' ,bg = 'red', padx = 2, command = Downloader).place(x=180 ,y = 150)

Вход в полноэкранный режим Выход из полноэкранного режима

Функция Downloader выше принимает введенный URL YouTube, ищет первый поток (360p, 720p, 1080p e.t.c) и загружает видео. Конечный результат таков:

После вставки URL, как показано ниже, нажмите кнопку DOWNLOAD. Подождите несколько секунд, и ваше видео будет загружено.

Заключение

Мы успешно разработали программу для загрузки видео с youtube с помощью python. Надеюсь, это было полезно. Спасибо за прочтение.

Оцените статью
devanswers.ru
Добавить комментарий