Cách tải video youtube bằng python

Youtube là một trang web nơi bạn có thể tự do tải lên và chia sẻ video trực tuyến. Nhưng nếu có một cách dễ dàng hơn để tải xuống những video này hơn là cố gắng tìm URL của chúng thông qua mã nguồn thì sao? . Có nhiều thư viện lập trình khác nhau giúp việc tải xuống từ Youtube trở nên đơn giản hơn rất nhiều. Trong hướng dẫn này, chúng tôi sẽ tải xuống video Youtube bằng Python. Chúng tôi sẽ sử dụng PYtube giúp chúng tôi tải xuống cả video Youtube, tiêu đề, hình thu nhỏ thậm chí cả danh sách phát hoàn chỉnh. Chúng ta sẽ tạo hai chương trình. phiên bản đầu tiên là trình tải xuống dựa trên dòng lệnh và một phiên bản dựa trên GUI khác mà chúng tôi sẽ xây dựng bằng Tkinter

nội dung

Khách quan

  1. Tìm nạp tiêu đề video youtube
  2. Tìm nạp hình ảnh thu nhỏ của video youtube
  3. Tải video từ youtube
  4. Tải xuống video từ youtube ở độ phân giải cụ thể
  5. Danh sách phát từ youtube
  6. Tạo trình tải xuống youtube dựa trên GUI bằng Tkinter

điều kiện tiên quyết

PYtube

PyTube là một mô-đun Python mã nguồn mở và là tiện ích dòng lệnh để tải xuống nội dung và siêu dữ liệu YouTube. Nếu bạn đã quen thuộc với YouTube-DL, thì PyTube cũng có ý tưởng tương tự nhưng được viết bằng Python. Công cụ này cần rất ít để chạy, hoạt động trên các hệ thống Windows, Mac và Linux với Python 2 và 3.

Bạn có thể tải xuống pytube bằng lệnh sau trong dấu nhắc lệnh hoặc thiết bị đầu cuối của bạn

pip install pytube3

tkinter

Tkinter là một mô-đun GUI nâng cao cho Python. Nó cho phép bạn tạo giao diện người dùng đồ họa linh hoạt và mạnh mẽ. Thay vì chỉ cung cấp một cửa sổ đơn giản với các widget bên trong, bạn có thể đặt nhiều widget lại với nhau, thay đổi thuộc tính của chúng và liên kết chúng với dữ liệu. Widget là các thành phần GUI cơ bản cho phép bạn tạo các thành phần GUI tiêu chuẩn nhất. Chúng tồn tại trong nhiều ngôn ngữ lập trình, bao gồm cả Python

Bạn có thể tải xuống Tkinter bằng lệnh sau trong dấu nhắc lệnh hoặc thiết bị đầu cuối

pip install tkinter

Bước 1. Tìm nạp tiêu đề video youtube

from pytube import YouTube
url = '//www.youtube.com/watch?v=DODLEX4zzLQ'
yt_video = YouTube[url]
print[yt_video.title]

giải thích mã

  1. Nhập các gói
  2. Thêm URL của video youtube mà chúng tôi muốn tải xuống
  3. Gọi phương thức youtube
  4. In tiêu đề

đầu ra.

Như bạn có thể thấy nó đã hoạt động thành công và chúng tôi có tiêu đề của video youtube

Bước 2. Tìm nạp hình ảnh thu nhỏ của video youtube

from pytube import YouTube
url = '//www.youtube.com/watch?v=DODLEX4zzLQ'
yt_video = YouTube[url]
print[yt_video.thumbnail_url]

giải thích mã.

  1. Nhập các gói
  2. Thêm URL của video youtube mà chúng tôi muốn tải xuống
  3. gọi phương thức youtube
  4. Lấy hình thu nhỏ của video bằng phương pháp hình thu nhỏ

đầu ra

Bạn sẽ nhận được một liên kết ở đầu ra và nếu bạn mở liên kết, hình ảnh sẽ được hiển thị. Bạn có thể tải xuống từ đó.

Bước 3. Tải video từ Youtube

from pytube import YouTube

url = '//www.youtube.com/watch?v=DODLEX4zzLQ'
yt_video = YouTube[url]
# this method will download the highest resolution that video is available
yt_video = my_video.streams.get_highest_resolution[]
methodyt_video.download[]

print['your video is downloaded successfully']

giải thích mã

  1. Nhập các gói
  2. Thêm URL của video youtube mà chúng tôi muốn tải xuống
  3. Gọi phương thức youtube
  4. Để tải xuống video từ youtube, trước tiên chúng tôi cần xác định độ phân giải luồng
  5. Để tải video từ youtube chúng ta sẽ sử dụng cách download

Sau khi chạy mã, nó sẽ bắt đầu tải xuống video và sau khi hoàn thành, video youtube của bạn sẽ nằm trong cùng thư mục với tệp python của bạn.

Bước 4. Tải xuống video từ youtube ở độ phân giải cụ thể

Nếu bạn muốn tải xuống video ở độ phân giải cụ thể ở định dạng chỉ có âm thanh thì bạn có thể sử dụng đoạn mã sau

from pytube import YouTube
url = '//www.youtube.com/watch?v=DODLEX4zzLQ'
yt_video = YouTube[url]

# here we are fetching a list of all the video resolution
videos = yt_video.streams.all[]
# we are using enumerate to get the index number
res_list = list[enumerate[videos]]
for i in res_list:
    print[i]

resolution = int[input["Enter the index number of the video : "]]
videos[resolution].download[]
print['your video is downloaded successfully']

giải thích mã

  1. Nhập các gói
  2. Thêm URL của video youtube mà chúng tôi muốn tải xuống
  3. Gọi phương thức youtube
  4. Ở đây chúng tôi đang tìm nạp danh sách tất cả các độ phân giải video
  5. Chúng tôi đang sử dụng kiểu liệt kê để lấy số chỉ mục

đầu ra

Ở đầu ra, nó sẽ hỏi bạn muốn tải xuống phiên bản video nào và bạn chỉ cần nhập số chỉ mục và nó sẽ tự động tải xuống

Bạn có thể sử dụng phương pháp lọc để lọc âm thanh duy nhất hoặc chỉ video

Để chỉ tải xuống âm thanh

# for getting only audio list
videos = yt_video.streams.filter[only_audio=True]

đầu ra

Chỉ tải xuống video

# for getting only video list
videos = yt_video.streams.filter[only_audio=True]

đầu ra

Bước -5. Tải xuống danh sách phát từ Youtube

________số 8_______

giải thích mã.

  1. Nhập các gói
  2. Tạo một biến để lưu trữ dữ liệu của danh sách phát
  3. Thêm liên kết của danh sách phát
  4. in tên của video hiện đang tải xuống

Và đó là nó

Bước -6. Tạo trình tải xuống Youtube dựa trên GUI bằng trình thiết kế QT

# import required libraries
import string
import tkinter as tk
from tkinter import *
from tkinter import messagebox
from tkinter import filedialog
from cv2 import dft
from pytube import YouTube

def createwidgits[]:
    # creating a button
    link_label = Label[root, text ='Paste URL: ', bg="#999999"]
    # placing the label
    link_label.grid[row=1, column=0, pady=10, padx=10]

    # creating a entry point
    root.link_text = Entry[root, width=60 , textvariable=video_link]
    # placing the point
    root.link_text.grid[row=1, column=1,pady=10, padx=10]

    # creating a destination label
    destination_label = Label[root, text ='Destination: ', bg="#999999"]
    # placing the label
    destination_label.grid[row=2, column=0, pady=10, padx=10]

    # creating a destination box
    root.destination_label = Entry[root, width=60 , textvariable=Download_path]
    # placing the box
    root.destination_label.grid[row=2, column=1,pady=10, padx=10]

    # create a browse button
    browse_but = Button[root, text="Browse", command=browse, width=10, bg="#ffffff"]
    # place the button
    browse_but.grid[row=2, column=2, pady=10, padx=10]

    # create a download button
    download_but = Button[root, text="Download", command=download_video, width=15, bg="#ff0000"]
    # place the button
    download_but.grid[row=3, column=1, pady=3, padx=3]

# define browse button function
def browse[]:
    # set directory
    downlaod_dir = filedialog.askdirectory[initialdir="Downlaod path"]
    Download_path.set[downlaod_dir]

# create youtube video download function
def download_video[]:

    url = video_link.get[]
    folder = Download_path.get[]
    get_video = YouTube[url]
    get_stream = get_video.streams.first[]
    get_stream.download[folder]

    messagebox.showinfo["Your video downloaded successfully"]

# creating an instance
root = tk.Tk[]

# size of the window
root.geometry["600x120"]
root.resizable[False,False]
# name of the window
root.title["downloader"]
# colors of the window
root.config[background="#999999"]

video_link = StringVar[]
Download_path = StringVar[]

createwidgits[]

root.mainloop[]

đầu ra

Từ cuối cùng

Chúng tôi đã thảo luận về hai phương pháp mà bạn có thể sử dụng để tải xuống video Youtube bằng Python, ở bất kỳ chất lượng nào về máy tính của bạn trong vòng chưa đầy một phút. Phiên bản đầu tiên là trình tải xuống dựa trên dòng lệnh và phiên bản dựa trên GUI khác. Điều này có thể rất hữu ích để tải xuống video bài giảng trực tuyến, hướng dẫn trực tuyến, video hội nghị trực tuyến, bài nói chuyện hội nghị trực tuyến, lớp đào tạo trực tuyến, v.v. Bạn có thể sao chép và dán mã vào thiết bị đầu cuối của mình

Làm cách nào để tải xuống video YouTube ở chế độ hd bằng python?

Tải xuống video YouTube bằng Python .
pip cài đặt pytube. Bước II. Trong tập lệnh của bạn, hãy nhập lớp YouTube từ gói pytube
từ pytube nhập YouTube. Bước III. Tạo đối tượng YouTube bỏ qua URL video
yt = YouTube[""] .. .
mp4_files = yt. .
mp4_369p_files = mp4_files. .
mp4_369p_files

Pytube vẫn hoạt động chứ?

Thư viện pytube ban đầu không còn hoạt động , vì vậy chúng tôi cần sử dụng thư viện pytube3, thư viện này chỉ hoạt động với Python3 chứ không hoạt động với Python2. Chúng tôi sẽ thấy nhiều điều chúng tôi có thể làm với Trình tải xuống Youtube của mình và các chức năng khác nhau mà nó cung cấp cho chúng tôi. Vì vậy, hãy làm điều đó từng bước.

Chủ Đề