You are currently viewing Графический интерфейс для получения просмотров, лайков и заголовка видео на YouTube с помощью API YouTube на Python

Графический интерфейс для получения просмотров, лайков и заголовка видео на YouTube с помощью API YouTube на Python

Обязательное условие: API YouTubeTkinter

Python предлагает несколько вариантов разработки графического интерфейса пользователя (GUI). Из всех методов графического интерфейса Tkinter является наиболее часто используемым методом. Это стандартный интерфейс Python для инструментария Tk GUI, поставляемого вместе с Python. Python с Tkinter-это самый быстрый и простой способ создания приложений с графическим интерфейсом.

В этой статье мы узнаем, как мы можем получать данные (например, название, просмотры, лайки, антипатии и т.д.) Из любого видео YouTube с помощью API YouTube на Python.

Ниже приведен графический интерфейс, который необходимо создать:

Пошаговый подход:

Прежде чем продолжить, следует должным образом пройти API YouTube для того, чтобы установить необходимые модули и включить необходимые функции, как указано в статье.

  • Импортируйте необходимые модули.
# Import Module
from tkinter import *
from googleapiclient.discovery import build
  • Мы будем использовать build()list()execute() метод, он даст подробную информацию о видео.
  • Внутри метод списка, передайте фрагмент кода и статистику в часть имущества и в Пропуск на видеозапись VideoID VideoURL.
# creating youtube resource object
youtube = build('youtube','v3', developerKey="Enter API Key")

# retrieve youtube video results
video_request=youtube.videos().list(
part='snippet,statistics',
id="Enter Video ID"
)

video_response = video_request.execute()
  • Получите заголовок, просмотры, лайки от video_response.
title = video_response['items'][0]['snippet']['title']
likes = video_response['items'][0]['statistics']['likeCount']
views = video_response['items'][0]['statistics']['viewCount']
  • Создайте окно Tkinter; Добавьте кнопки, ярлык и т. д..
# Create Object
root = Tk()

# Set Geometry
root.geometry("500x300")

# Add Label, Entry Box and Button
Label(root, text="Title, Views, Likes of YouTube Video", fg="blue",
	font=("Helvetica 20 bold"), relief="solid", bg="white").pack(pady=10)
Label(root, text="Enter video URL or ID", font=("10")).pack()

video_url = Entry(root, width=40, font=("15"))
video_url.pack(pady=10)

Button(root, text="Get Details", font=("Helvetica 15 bold")).pack()

details = Label(root, text="")
details.pack(pady=10)

# Execute Tkinter
root.mainloop()

Ниже приводится реализация, основанная на вышеуказанном подходе:

# Import Module
from tkinter import *
from googleapiclient.discovery import build

def video_details():
	if "youtube" in video_url.get():
		video_id = video_url.get()[len("https://www.youtube.com/watch?v="):]
	else:
		video_id = video_url.get()

	# creating youtube resource object
	youtube = build('youtube','v3',developerKey='Enter API Key')

	# retrieve youtube video results
	video_request=youtube.videos().list(
		part='snippet,statistics',
		id=video_id
	)

	video_response = video_request.execute()

	title = video_response['items'][0]['snippet']['title']
	likes = video_response['items'][0]['statistics']['likeCount']
	views = video_response['items'][0]['statistics']['viewCount']

	details.config(text=f"Title:- {title}\nLikes:- {likes}\nViews:- {views}")

# Create Object
root = Tk()

# Set Geometry
root.geometry("500x300")

# Add Label, Entry Box and Button

Label(root,text="Title, Views, Likes of YouTube Video", fg="blue",
	font=("Helvetica 20 bold"),relief="solid",bg="white").pack(pady=10)
Label(root,text="Enter video URL or ID", font=("10")).pack()

video_url = Entry(root,width=40,font=("15"))
video_url.pack(pady=10)

Button(root,text="Get Details" ,font=("Helvetica 15 bold"),command=video_details).pack()

details = Label(root,text="")
details.pack(pady=10)

# Execute Tkinter
root.mainloop()

Выход: