下載 Youtube 清單中所有影片
這篇文章會介紹使用 Python 的 pytube 第三方函式庫,讀取 Youtube 清單內容,並將清單裡的所有影片下載為 mp4。
本篇使用的 Python 版本為 3.7.12,所有範例可使用 Google Colab 實作,不用安裝任何軟體 ( 參考:使用 Google Colab )
安裝 pytube
輸入下列指令,安裝 pytube ( 根據個人環境使用 pip、pip3 )
!pip install pytube
讀取 Youtube 清單資訊
參考「pytube - Using Playlists」說明,使用 pytube 讀取 Youtube 清單網址後,就能將該影片清單的所有影片網址,輸出成為串列。
import os
os.chdir('/content/drive/MyDrive/Colab Notebooks') # 使用 Colab 要換路徑使用
from pytube import Playlist
playlist = Playlist('https://www.youtube.com/watch?v=mOPRaLPh-YU&list=PL9ACDjBMkp9wViVmgpYweGkNqh62pHspF')
# 讀取影片清單
print(playlist.video_urls) # 印出清單結果
'''
['https://www.youtube.com/watch?v=mOPRaLPh-YU',
'https://www.youtube.com/watch?v=wARhTJH1fJI',
'https://www.youtube.com/watch?v=WLjePGUCRqc']
'''
下載 Youtube 清單中所有影片為 mp4
參考「下載 Youtube 影片 ( mp4、mp3、字幕 )」文章,讀取到影片清單中所有影片網址後,透過 for 迴圈,就能將所有影片下載為 mp4。
import os
os.chdir('/content/drive/MyDrive/Colab Notebooks') # 使用 Colab 要換路徑使用
from pytube import Playlist, YouTube
playlist = Playlist('https://www.youtube.com/watch?v=mOPRaLPh-YU&list=PL9ACDjBMkp9wViVmgpYweGkNqh62pHspF')
print('download...')
for i in playlist.video_urls:
print(i)
yt = YouTube(i) # 讀取影片
yt.streams.filter().get_highest_resolution().download() # 下載為最高畫質影片
print('ok!')
參考資料
意見回饋
如果有任何建議或問題,可傳送「意見表單」給我,謝謝~