簡介
當我們要下載網路影片時,通常會去使用browser上的套件來下載,其實除了browser套件外,我們也可以使用command-line的方式,也就是這篇要介紹的youtube-dl。
youtube-dl功能十分強大,也有很多參數可以調整,能下載的網站不只是youtube,也可以是其他熱門網站,例如Facebook等等,更重要的是這個工具有多個平台可以使用(Windows、Mac、Linux)。
除了指令youtube-dl以外,我們也可以用GUI的介面的工具youtube-DLG,使用上更為方便,詳請可參考最強的網路影片下載器 Youtube-dl-gui 只要有網址就能幫你搞定。
安裝
MAC
1 2 3
| brew install youtube-dl
brew install ffmpeg
|
Ubuntu
1 2 3
| sudo apt-get install youtube-dl
sudo apt-get install ffmpeg
|
Python
其實更好的方法是使用Python的pip來安裝,因為youtube-dl本身就是使用Python所寫成的,而由於影片的網站更新很快,所以可能要隨時更新到最新版的youtube-dl才行,OS distribution不一定會出的那麼快。
1 2 3
| pip install --upgrade youtube_dl
pip3 install --upgrade youtube_dl
|
使用
這邊介紹一些常用的指令
支援
- 確定有支援下載哪些影片網站,相關列表也可以從官網查詢
1
| youtube-dl --extractor-descriptions
|
格式
如果我們沒有指定格式的話,通常youtube-dl會幫我們挑最好的
1 2 3 4 5 6
| youtube-dl -F [URL]
youtube-dl -f mp4 [URL]
youtube-dl -f [列表中的format code] [URL]
|
輸出格式
由於官方的輸出格式預設有帶ID(%(title)s-%(id)s.%(ext)s
),我們可以將其去除
1
| youtube-dl -o '%(title)s.%(ext)s' [URL]
|
字幕
- 選擇嵌入特定字幕
--write-sub
代表下載字幕
--embed-sub
代表嵌入字幕
--sub-lang
代表要選擇的字幕
1 2 3 4
| youtube-dl --list-subs [URL]
youtube-dl --write-sub --embed-sub --sub-lang [字幕] [URL]
|
1
| youtube-dl --write-sub --embed-sub --all-subs [URL]
|
轉為音樂格式
如果我們要下載音樂格式的話,基本上需要有ffmpeg的輔助
- 選擇要下載的音樂格式,例如mp3、m4a、flac等等
1
| youtube-dl -x --audio-format [音樂格式] [URL]
|
- 可以用
--audio-quality
強迫ffmpeg轉換較高品質的音樂,0是最好,9是最差
1
| youtube-dl -x --audio-format [音樂格式] --audio-quality [音樂品質] [URL]
|
- 下載時附上封面(使用youtube截圖)和音樂資訊(作曲者等等)
1
| youtube-dl -x --audio-format [音樂格式] --embed-thumbnail --add-metadata [URL]
|
下載播放清單
- 其實只要把[URL]換成播放清單的網址即可,不過我們也可以指定開始和結束位址
--playlist-start
:開始
--playlist-end
:結束,也就是倒數第幾個影片
1
| youtube-dl --playlist-start [開始位置] --playlist-end [結束位置] [URL]
|
常用
我這邊直接列出常用的指令,如果要使用可以直接copy比較快
1
| youtube-dl -f mp4 --write-sub --embed-sub --all-subs -o '%(title)s.%(ext)s' [URL]
|
1
| youtube-dl -x --audio-format mp3 --audio-quality 0 --embed-thumbnail --add-metadata [URL]
|
參考