Youtube downloader

做影像處理常常會需要大量的資料去訓練,而取得資料最快的地方即是影片,其中又屬youtube的影片資料量最多,網路查詢過很多下載的方式,有把它做成程式下載器供別人離線下載的,也有很多像下圖這樣的線上下載網頁。這樣的網頁必須一個一個的將影片網址貼上然後再一次次的點擊下載,如果是少量的影片其實這些方法就很夠用了,但如果是要大量的下載影片,那麼光下載的動作可能就會耗掉一整天的時間,因此我開始搜尋有無更快的方法,最後發現原來python中有一個庫稱做pytube就已經提供用程式下載影片的功能了,這又讓我更愛上python了 XD。下面將介紹關於這工具的使用方式,現在如果我需要下載影片的話,只需要將網址全部貼一貼然後按執行就可以下載了~~~

1.install

# pytube version: 6.4.2
pip install pytube

2.引用YouTube函數

from pytube import YouTube
link = 'https://www.youtube.com/XXX'
yt = YouTube(link)

3.相關功能介紹

  • yt.get_videos()
    會針對剛剛所給的網址上網尋找影片,回傳值是一串list,包含網路上所有可下載的影片格式、解析度。特別注意的是,解析度的順序是由小排到大,因此如果只想要下載高清影片,只要讀取這個list的最後一項就可以了。

  • yt.filter(‘3gp’)
    此功能可以針對影片的特殊格式進行濾波,回傳也是一個list,根據解析度由小到大排列。

  • yt.get(‘mp4’,‘360p’):
    也可以同時指定影像種類以及解析度

  • yt.filename :
    獲取檔案的名稱

  • yt.set_filename(video_name)
    重新命名檔案名稱

4.執行下載

透過各種功能找到您想要的檔案之後就可以呼叫download函數執行下載的工作了,資料會存放在location的位置

import os
location = os.getcwd()
location = location+'/'
video = yt.filter("3gp")[-1]
video.download(location)

5.參考資料:

arrow
arrow
    創作者介紹
    創作者 Darwin的AI天地 的頭像
    Darwin的AI天地

    我的小小AI 天地

    Darwin的AI天地 發表在 痞客邦 留言(1) 人氣()