Johdanto
Youtube-dl on vapaan ohjelmiston komentorivipohjainen työkalu videoiden lataamiseen Youtubesta. Työkalu toimii kaikilla käyttöjärjestelmillä, joissa on Python (2.6, 2.7, or 3.2+) -tulkki. Windowsilla suoritettava ohjelma pitää sisällään myös tulkin, eli sitä ei tarvitse ladata erikseen.
Etuina ovat mm. työkalun tehokkuus ja monipuolisuus. Suorittamalla vain yhden komennon, voit ladata vaikka kaikki 500+ videota tietyltä Youtube-kanavalta tai soittolistalta.
HUOM! Videoiden lataaminen henkilökohtaiseen käyttöön on täysin sallittua, mutta niiden levittäminen tai niistä veloittaminen voi johtaa laillisiin ongelmiin.
Projektin sivut: https://ytdl-org.github.io/youtube-dl/index.html
Asennus ja käyttö
Testattu seuraavilla ohjelmistoversioilla: Windows 10 Pro (1803), youtube-dl (2019.03.01) and FFmpeg (N-92972-g301cee61fa).
- Asenna youtube-dl: https://ytdl-org.github.io/youtube-dl/download.html
- Asenna FFmpeg: https://ffmpeg.zeranoe.com/builds/. Tämä ei ole kaikissa käyttötarkoituksissa tarpeellinen, mutta se tarvitaan, jos haluaa yhdistää tiedostomuotoja yhdeksi tiedostoksi (esim. mp4 (kuva) ja m4a (ääni)) tai määritellä lopullisen tiedostoformaatin.
- Luo uusi kansio ja siirrä sinne youtube-dl.exe, ffmpeg.exe, ffplay.exe ja ffprobe.exe.
- Avaa Windows PowerShell -konsoli ja navigoi juuri luomaasi kansioon. Toisin kuin Linuxin shellissä, PowerShellissä ohjelmat ajetaan siinä hakemistossa, jossa ne sijaitsevat. Voit siirtyä haluamaasi hakemistoon komennolla cd <hakemistopolku>, eli esimerkiksi: cd C:\Users\Markus\Youtube-dl\. Komento ls listaa kansion sisällön.
- Aloita youtube-dl:n käyttö:
a) Yksittäisen videon lataaminen komennolla:
.\youtube-dl.exe -f bestvideo+bestaudio https://youtube.com/watch?v=XXXXXXXXXX
b) Kokonaisen soittolistan lataaminen komennolla:
.\youtube-dl.exe -f bestvideo+bestaudio https://www.youtube.com/playlist?list=XXXXXXXXXXXXXXXXXXXXXXXXXX
c) Kaikkien videoiden lataaminen yksittäiseltä kanavalta:
.\youtube-dl.exe -f bestvideo+bestaudio https://www.youtube.com/channel/XXXXXXXXXXXXXXXXXXX
Lisävalintoja:
Määrittele lataushakemisto. Muuten youtube-dl lataa tiedostot oletuksena omaan asennushakemistoonsa:
-o 'C:\Users\$env:USERNAME\Videos\%(title)s.%(ext)s'
Määrittele yhdistetyn videon ja äänen tiedostoformaatit. Esimerkiksi seuraavan komennon tuloksena olisi sekä videota että ääntä sisältävä mp4-tiedosto.
-f "bestvideo[ext=mp4]+bestaudio[ext=m4a]"
Soittolistoja ja kanavan videoita ladattaessa, suosittelen seuraavia lisäparametreja.
Määrittele erillinen tekstitiedosto, johon youtube-dl kirjaa jo ladatut videot, jotta niitä ei ladata vahingossa uudelleen myöhemmin:
--download-archive downloaded.txt
Jotkin videot saattavat sisältää materiaalia, jonka vuoksi sitä ei voida tekijänoikeussyistä esittää Suomessa. Tulee virheilmoitus “ERROR: This video contains content from X, who has it blocked in your country on copyright grounds.” ja youtube-dl keskeyttää toimintansa. Jätä virheilmoitukset huomioimatta seuraavalla lisäparametrilla:
-i
Lataa soittolistalta tai kanavalta vain videot väliltä x ja y:
--playlist-start x --playlist-end y
Rajoita latausnopeus esimerkiksi viiteen MiB/s:
-r 5M
Esimerkkejä
Lataa äänitiedosto parhaalla mahdollisella tiedostomuodolla:
.\youtube-dl.exe -f bestaudio https://youtube.com/watch?v=XXXXXXXXXX
Lataa äänitiedosto mp3-tiedostopäättellä. Jostain syystä -f bestaudio[ext=mp3] ei toimi ainakaan minulla, vaikka se toimii m4a-formaatin kanssa. Korvaa se valinnalla -x –audio-format mp3:
.\youtube-dl.exe -x --audio-format mp3 https://youtube.com/watch?v=XXXXXXXXXX
Lataa äänitiedosto m4a-tiedostopäättellä:
.\youtube-dl.exe -f bestaudio[ext=m4a] https://youtube.com/watch?v=XXXXXXXXXX
Lataa video parhaalla mahdollisella kuvalla ja äänellä. Lopputuloksena saattaa videosta riippuen olla esimerkiksi mkv- tai mp4-tiedosto:
.\youtube-dl.exe -f bestvideo+bestaudio https://youtube.com/watch?v=XXXXXXXXXX
Lataa video ja ääni yhteen mp4-tiedostoon:
.\youtube-dl.exe -f "bestvideo[ext=mp4]+bestaudio[ext=m4a]" https://youtube.com/watch?v=XXXXXXXXXX
Lataa youtube-kanavan kaikki videot mp4-muodossa 5-50 videon väliltä. Tallenna valmiit videotiedostot hakemistoon C:\Users\käyttäjänimi\Videos\. Jätä virheet huomioimatta, ja pidä kirjaa jo valmiiksi ladatuista tiedostoista tekstitiedostoon downloaded.txt, siltä varalta, että komento joudutaan keskeyttämään ja suorittamaan myöhemmin uudelleen:
.\youtube-dl.exe --download-archive downloaded.txt --playlist-start 5 --playlist-end 50 -o 'C:\Users\$env:USERNAME\Videos\%(title)s.%( ext)s' -i -f "bestvideo[ext=mp4]+bestaudio[ext=m4a]" https://www.youtube.com/channel/XXXXXXXXXXXXXXXXXXX
Youtube-dl on todella monipuolinen työkalu. Jos tarvitset lisää valintoja tai ajaudut ongelmiin, vilkaise projektin GitHub: https://github.com/ytdl-org/youtube-dl.
Päivittäminen
Jos saat virheilmoituksen, kannattaa kokeilla youtube-dl:n päivittämistä:
ERROR: Unable to download webpage: HTTP Error 500: Internal Server Error (caused by HTTPError()); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type youtube-dl -U to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Päivitys komennolla:
.\youtube-dl.exe -U