Scaricare video da YouTube e non solo
Tralasciando per un attimo le questioni di copyright (mi raccomando state attenti a tutto ciò che è pubblicato illegalmente) può capitare (spesso) di voler scaricare dei video da YouTube o da altre piattaforme simili. Esistono applicazioni da installare, estensioni per il browser ecc.
Tuttavia quando si tratta di playlist (la serie animata preferita, le videolezioni universitarie, un corso di inglese) può essere abbastanza noioso gestire manualmente tutte le operazioni.
Se poi volessimo eseguire i download in automatico, magari di notte per ritrovarci al mattino tutti i file già pronti oppure estrarre le tracce audio e via dicendo?
Ecco in nostro soccorso un tool a riga di comando molto potente e personalizzabile. Qualcuno potrebbe storcere il naso pensando a chissà quali opzioni da dover specificare. Non sarebbe meglio un'interfaccia grafica?
In effetti sono diverse le opzioni disponibili ma non è detto che sia necessario conoscerle e utilizzarle tutte. E poi una volta preparato lo script potremo facilmente adattarlo ai nostri scopi.
Ma di cosa stiamo parlando? Semplicemente di youtube-dl un tool molto flessibile e potente scritto in Python.
Quindi il primo requisito è la presenza di un interprete per questo linguaggio. Vanno bene sia la versione 2.7 che 3.2+.
Gli utenti di Windows possono scaricare un eseguibile .exe direttamente dal sito ma noi faremo riferimento a Linux nei nostri esempi.
Ammesso che Python sia già presente sulla nostra macchina abbiamo tre opzioni per l'installazione di youtube-dl
Usare curl sudo curl -L https://yt-dl.org/downloads/latest/youtube-dl -o /usr/local/bin/youtube-dl sudo chmod a+rx /usr/local/bin/youtube-dl
oppure wget sudo wget https://yt-dl.org/downloads/latest/youtube-dl -O /usr/local/bin/youtube-dl sudo chmod a+rx /usr/local/bin/youtube-dl
o ricorrere a pip sudo pip install --upgrade youtube_dl
Non voglio annoiarvi con tutte le opzioni disponibili quindi vi rimando alla documentazione completa sul repository GitHub.
Piuttosto vediamo qualche esempio pratico ripreso direttamente dal sito. Solo qualcuno perchè le possibilità sono sterminate.
C'è da fare una piccola premessa: gli utenti Windows dovrebbero utilizzare se necessario i doppi apici al posto di quelli singoli.
Scaricare un file
youtube-dl --get-filename -o '%(title)s.%(ext)s' <video-url>
Estrarre una traccia audio mp3
youtube-dl --extract-audio --audio-format mp3 --audio-quality 0 <video-url>
N.B. In questo caso potrebbe essere segnalato il seguente errore: "ERROR: ffprobe or avprobe not found. Please install one". Il problema si risolve installando ffmpeg con apt-get install ffmpeg
Scaricare una playlist
youtube-dl -f 18 -o '%(playlist)s/%(playlist_index)s - %(title)s.%(ext)s' <playlist-url>
Come dicevo questa è solo una piccola parte delle operazioni che è possibile effettuare con questo straordinario tool.
In seguito vedremo qualche altro esempio più approfondito.