[教學] youtube-dl win版文字介面 簡易版教學

作者: x94fujo6   2020-03-26 22:21:39
文字介面對不懂英文的人可能比較難上手
做個簡易教學
這篇不會用到git流程
也不需要架python或其他語言環境
(會上面的請不要看這篇好嗎XD)
https://github.com/ytdl-org/youtube-dl
這是ytdl的git頁面
往下拉直接就是說明
要下載 點release
https://i.imgur.com/qoeehWn.png
最上面就是最新的版本
https://i.imgur.com/Goykg4T.png
youtube經常在更新
最常見就是突然無法下載,跳錯誤
(一些貼網址下載的釣魚(劃掉)網站也會很神奇的同步失效 ㄏㄏ)
當你發現無法下載,大概過一兩天有新版下指令更新就好了
你要穩定+更新快就是用ytdl
(ytdl不只能抓youtube 還能抓twitter、bili、p_rnhub等一大堆網站根本數不完)
因為git是全世界的人都可以共同維護
youtube一偷改甚麼,大概沒幾分鐘就會有人反應
(然後太多人洗版直接關issues→在修了不要吵辣XD)
(一些看vtuber的監控室(?)/自家保存(?)工具其實也是用ytdl,幾乎24小時都有人盯著)
大約1~2小時,很快就會有人寫好修復方法推上去
但因為要跑流程,不會馬上就release新版本
需要第一時間更新請自己學git流程
人家改好放上去,就自己下指令更新/自己修改編譯/直接用python跑
就不用等git那邊release
windwos懶人環境就是下載*.exe執行檔
https://i.imgur.com/Z1W6PyQ.png
然後做一些設定後
打開cmd/powershell (就windows的文字介面)
輸入youtube-dl就可以直接調用
下載之後放到你好記的位置
例如C:\youtube-dl\youtube-dl.exe
(這是超懶人的爛例子,知道我在說啥就不要亂學)
win10
開始→右鍵→系統→(右上)系統資訊→(左上)進階系統設定
進階→環境變數
上面的使用者變數下
有個path(路徑)
點兩下 編輯
新增
輸入剛才放youtube-dl.exe的"資料夾路徑"
上面例子就是C:\youtube-dl
改好一路確定儲存
這樣設定之後
C:\youtube-dl這個資料夾下面所有的exe執行檔
都可以在任何地方打開cmd/powershell後直接調用
就跟內鍵的dos/powershell指令一樣
在任意資料夾(最好是你要放下載檔案的位置)下
按住shift+右鍵
會多一個在這裡開啟powershell
你現在可以用youtube-dl下載所有支援網站的影片了
指令很簡單
youtube-dl youtube影片/播放清單/使用者影片列表的網址
例如
youtube-dl https://www.youtube.com/watch?v=pIZHuwR6FKQ
就會直接開始下載預設的格式 (一般是mp4)
這不是最好的,但是是最懶人的格式
[以下進階使用]
更多指令請看,全都寫在上面了
https://github.com/ytdl-org/youtube-dl
要說真的一篇說不完
google很方便,相信有寫得比我好的教學
沒有也沒關係,不懂英文沒啥好怕
現在chrome右鍵直接翻譯很方便
加減看也能懂個七八成
看不懂就直接試試看就懂了
ytdl
可以下載影像
可以下載聲音
可以下載縮圖(Thumbnail)
可以下載字幕(Subtitle)←要過濾出你要的不然會一大堆自動翻譯/多國語言全抓下來
可以下載串流
可以設定多個設定檔,下載不同網站時直接調用就不用花時間改指令
可以配合cookie/代理繞過各種魔法(?)
可以用批次檔/python/其他語言環境調用配合其他工具各種花式使用
etc...
youtube為了適應各種下載速度/硬體,自動減少流量使用/調整畫質
現在一個影片會有一大堆不同格式
用-F指令可以看有甚麼格式(注意大小寫有差)
這指令也可以用來測試ytdl支不支援這網站
支援的話就會列出能下載的格式
youtube-dl -F https://www.youtube.com/watch?v=t2X3wlvoShg
https://i.imgur.com/qV6qAs7.png
預設的mp4下載一些短片並不會有甚麼問題
但如果是幾十分鐘甚至一小時以上,或是2K、4K
那個檔案大小會很歡樂
一般會改選vp9(影像)+opus(聲音)←這樣會包成mkv,因為mp4不支援
相比mp4+m4a檔案更小,品質還可能更好
指令用小寫的 -f 格式就可以選你想要的格式
以上面當範例
要抓最高畫質又想節省空間,指令就改成
youtube-dl -f 303+251 https://www.youtube.com/watch?v=pIZHuwR6FKQ
因為不一定所有影片都有你要的格式
想要自動選擇也可以寫好幾個條件選最好的
只要用/隔開就好,優先順序是由左到右
像這個例子
-f 243+251/243+140/134+140/bestvideo+bestaudio/best
會從最左邊條件開始嘗試抓
都抓不到就會抓預設的best
下載的檔案名稱也可以用-o自由設定
可以抓取的資料都在說明頁面的OUTPUT TEMPLATE下
https://github.com/ytdl-org/youtube-dl
這些主要是支援youtube但其他網站也是可以用的
只是可能其他網站並沒有這個資料,就抓不到
範例
youtube-dl -o "%(uploader)s\%(playlist)s_%(upload_date)s_%(title)s.%(ext)s"
https://www.youtube.com/watch?v=pIZHuwR6FKQ
(上面兩行請自行改成一行)
這樣抓下來檔案會自己放到
アズールレーン資料夾下
檔名
NA_20200326_期間限定イベント「闇靄払う銀翼」 イメージPV.mp4
↑因為這是單影片網址所以抓不到播放清單名稱顯示NA
[好孩子不要學]
播放清單有可能影片很多
但ytdl為了避免流量太大youtube不爽
預設是一個抓完才會抓下一個
加速方法
用播放清單(playlist)指令+不下載影片只輸出資料
只提取影片的網址,再傳遞給多個ytdl/其他批量工具
就可以一次下載好幾個影片
不過這樣會損失播放清單名稱
不想損失播放清單名稱
ytdl可以指定下載清單裡的第幾個檔案
用個簡單迴圈
想同時下載幾個就執行幾個ytdl
好幾倍速
其實已經接近程式設計的領域了XD
指令跟工具一大堆
1萬個人可以有1萬種花式解法
純指令→批次檔/設定檔→python或其他語言→結合其他工具
[結合其他工具使用]
live(直播)是hls(串流)
https://i.imgur.com/EPU9njw.png
可以用ffmpeg/streamlink +vlc直接用撥放器看
相比在瀏覽器開網頁看
優點:
消耗的系統資源大幅降低
可以多線程降低網路不穩(不論你或up)的影響←可能增加延遲
減少延遲
可以一次開10幾個撥放器同時看
可以設定buffer(緩衝)←播放會更穩定,但緩衝越大延遲也越高
串流不只能看,也可以直接下載
(我會跟你說有時人家vtuber還在直播,翻譯群已經分工打軸+翻譯完了嗎)
但ytdl原意是下載影片,對直播的支援還是streamlink比較好
雖然沒有一定
下面Q&A有
Should I add
作者: holishing   2020-03-26 22:29:00
推個,這個就是最簡單可靠的 youtube 影音下載方法了其他 GUI 什麼的都是多餘的
作者: ch010062 (faker)   2020-03-27 15:57:00
幫補幾個自己碰到的雷,網址引入時最好用雙引號刮住,ph網址盡量改成http另外引入Cookie蠻擔心被偵測到的,除非是登入限定不然我是盡量不用
作者: Bellkna (柔弱氣質偽少女)   2020-03-27 18:58:00
這個真的簡單好用 都用它+mpv看直播
作者: kesdoputr (k7)   2020-03-28 01:57:00
youtube-dl抓b站第二個part以後的問題不知道解決了沒
作者: empingao (empingao)   2020-03-30 18:01:00
有時 GUI 還是比較一目了然,眼拙看錯行數抓錯格式。
作者: drkh (eutatosp)   2020-05-05 12:17:00
有人做了一個 youtube-dl 的 gui.見 http://mrs0m30n3.github.io/youtube-dl-gui/以及 Github 的網頁:https://github.com/MrS0m30n3/youtube-dl-gui名字就叫做 Youtube-DLG. 可是它自帶的 ffmpeg.exe 以及ffprobe.exe 已老舊, 最好自行更換為新版.

Links booklink

Contact Us: admin [ a t ] ucptt.com