yt-dlp: Scaricare video da Youtube!!
yt-dlp: Scaricare video da Youtube per uso personale
Inizio

Questa guida ti accompagnerà passo dopo passo nell'installazione, configurazione e utilizzo di yt-dlp, lo strumento più potente e affidabile per scaricare contenuti da YouTube e altre piattaforme video.
0 – Installazione e configurazione
Prima di iniziare a scaricare, è necessario preparare il tuo computer installando i software fondamentali che permettono a yt-dlp di funzionare correttamente, gestire formati diversi e accelerare i download.
1 - Applicazioni necessarie
Di seguito trovi l'elenco dei software richiesti, con spiegazioni dettagliate su cosa sono e perché sono necessari.
1.1 - yt-dlp
- Link ufficiali: * Repository GitHub: https://github.com/yt-dlp/yt-dlp-nightly-builds * Pagina dei rilasci (Releases): https://github.com/yt-dlp/yt-dlp-nightly-builds/releases
- Cos'è: yt-dlp è un fork (una versione derivata e migliorata) del famoso youtube-dl. È uno strumento da riga di comando open-source che permette di scaricare video e audio da migliaia di siti web, incluso YouTube.
- Spiegazione: È il "motore" principale della guida. La versione "nightly" o gli ultimi rilasci stabili sono consigliati perché ricevono aggiornamenti frequenti per aggirare le nuove protezioni anti-download di YouTube. Devi scaricare il file eseguibile (solitamente
yt-dlp.exesu Windows) e salvarlo in una cartella accessibile.
1.2 - Node JS
- Link ufficiali: * Sito principale: https://nodejs.org/ * Versione inglese/internazionale: https://nodejs.org/en/
- Cos'è: Node.js è un ambiente di esecuzione JavaScript basato sul motore V8 di Chrome.
- Spiegazione: Sebbene yt-dlp sia scritto in Python, alcune funzionalità avanzate o script di elaborazione potrebbero richiedere ambienti JavaScript. Inoltre, è spesso una dipendenza per altri tool moderni dello sviluppo web. Installare la versione LTS (Long Term Support) è raccomandato per la stabilità.
1.3 - Deno
- Link ufficiali: * Repository GitHub: https://github.com/denoland/deno * Pagina dei rilasci: https://github.com/denoland/deno/releases
- Cos'è: Deno è un runtime moderno per JavaScript e TypeScript, creato dallo stesso creatore di Node.js, ma con un focus maggiore sulla sicurezza e la semplicità.
- Spiegazione: Nella nostra configurazione, Deno viene utilizzato come motore JavaScript alternativo (
--js-runtimes deno). yt-dlp può usare Deno per eseguire script JavaScript necessari per decifrare firme video complesse o gestire cookie in modo più efficiente rispetto ai metodi tradizionali.
1.4 - Python
- Link ufficiali: * Sito principale: https://www.python.org/ * Download generali: https://www.python.org/downloads/ * Ultima versione (es. 3.13): https://www.python.org/downloads/latest/python3.13/
- Cos'è: Python è un linguaggio di programmazione ad alto livello, facile da leggere e potente.
- Spiegazione: yt-dlp è scritto interamente in Python. Anche se scarichi la versione
.exe(che include già un interprete Python incorporato), avere Python installato sul sistema è utile per eventuali script personalizzati, aggiornamenti manuali o per eseguire yt-dlp direttamente dal codice sorgente se necessario. Assicurati di spuntare "Add Python to PATH" durante l'installazione.
1.5 - Visual C++ Redistributable
- Link ufficiale: * Microsoft Learn: https://learn.microsoft.com/it-it/cpp/windows/latest-supported-vc-redist?view=msvc-170
- Cos'è: Sono librerie di runtime necessarie per eseguire applicazioni sviluppate con Microsoft Visual Studio.
- Spiegazione: Molti programmi su Windows, inclusi alcuni componenti di FFmpeg o strumenti di download, dipendono da queste librerie per funzionare. Se mancano, potresti ricevere errori di tipo "VCRUNTIME140.dll mancante". Scarica e installa sia la versione x64 che x86 per massima compatibilità.
1.6 - Java
- Link ufficiale: * Adoptium (Eclipse Temurin): https://adoptium.net/
- Cos'è: Java è un linguaggio di programmazione e una piattaforma computazionale ampiamente utilizzata.
- Spiegazione: Sebbene non strettamente obbligatorio per le funzioni base di yt-dlp, Java è richiesto da alcuni strumenti di gestione dei download o plugin specifici che potrebbero interagire con la suite di download. Adoptium fornisce versioni open-source e gratuite di Java (OpenJDK) ottimizzate e prive di bloatware.
1.7 - FFmpeg-Builds
- Link ufficiali: * Repository GitHub: https://github.com/BtbN/FFmpeg-Builds * Pagina dei rilasci: https://github.com/BtbN/FFmpeg-Builds/releases * Nota importante: Scarica la versione GPL (non la versione LGPL static/shared se vuoi tutte le funzionalità libere).
- Cos'è: FFmpeg è una suite completa di librerie e strumenti per gestire file multimediali (video, audio, immagini).
- Spiegazione: Questo è fondamentale. yt-dlp scarica spesso video e audio separatamente (per ottenere la massima qualità). FFmpeg si occupa di "fondere" (mergiare) questi due flussi in un unico file (es. MP4 o MKV). Senza FFmpeg, non potrai unire audio e video né convertire formati (come creare MP3). Aggiungi la cartella di FFmpeg alle variabili d'ambiente PATH di Windows.
1.8 - Aria2
- Link ufficiali: * Repository GitHub: https://github.com/aria2/aria2 * Pagina dei rilasci: https://github.com/aria2/aria2/releases
- Cos'è: Aria2 è un'utilità di download da riga di comando leggera e multi-protocollo.
- Spiegazione: Usare
--downloader aria2cinvece del downloader predefinito di yt-dlp permette download asincroni e multi-thread. In pratica, aria2 divide il file in più parti e le scarica contemporaneamente, aumentando drasticamente la velocità di download e la stabilità in caso di connessioni instabili.
1.9 - Firefox
- Link ufficiale: * Sito italiano: https://www.firefox.com/it
- Cos'è: Firefox è un browser web open-source sviluppato da Mozilla.
- Spiegazione: Firefox è preferito in questa guida per la gestione dei cookie. L'opzione
--cookies-from-browser firefoxpermette a yt-dlp di leggere i cookie di sessione direttamente da Firefox. Questo è essenziale per scaricare video privati, membri-only, o per accedere a contenuti che richiedono login. Firefox ha una struttura di database dei cookie più accessibile per questi scopi rispetto ad altri browser.
2 - Le opzioni
Qui di seguito sono elencate le principali opzioni (flag) da utilizzare con yt-dlp, spiegate nel dettaglio.
- -U * Aggiorna il programma yt-dlp all'ultima versione disponibile. È buona norma farlo regolarmente poiché YouTube cambia spesso il suo codice.
- -F * Controlla e lista tutti i formati disponibili per un determinato video (risoluzione, codec audio/video, bitrate). Utile per scegliere manualmente il formato prima di scaricare.
- --cookies-from-browser firefox * Istruisce yt-dlp a estrarre i cookie di sessione da Firefox. Questo permette di scaricare video riservati agli abbonati, video privati o contenuti che richiedono l'accesso. Assicurati di essere loggato su YouTube con Firefox prima di lanciare il comando.
- --downloader aria2c * Utilizza Aria2 come gestore del download invece del downloader interno. Rende il download asincrono e multi-thread, migliorando velocità e affidabilità.
- --js-runtimes deno * Specifica l'uso di Deno come motore per l'esecuzione di JavaScript. Aiuta a decifrare le firme dei video più recenti e complessi che YouTube utilizza per proteggere i flussi.
- --compat filename-sanitization
* Attiva la compatibilità per la sanitizzazione dei nomi dei file. Rimuove automaticamente caratteri speciali, simboli strani o non supportati dal filesystem (come
?,*,|,:) dai titoli dei video, evitando errori di salvataggio.
- --add-metadata * Aggiunge i metadati al file finale. Include informazioni come titolo, artista, data di caricamento, descrizione e tag direttamente nelle proprietà del file video o audio.
- --embed-thumbnail * Scarica l'immagine di copertina (thumbnail) del video e la incorpora direttamente nel file multimediale. Così, quando guardi il video nel tuo player, vedrai la copertina corretta.
- --audio-multistreams * Attiva il supporto per i flussi audio multipli. Fondamentale se vuoi scaricare specificamente tracce audio in lingue diverse (es. doppiaggio italiano + audio originale). Richiede l'uso dei cookie (--cookies-from-browser) per accedere a tutte le tracce disponibili.
- -f bestvideo+bestaudio * Seleziona automaticamente il miglior flusso video disponibile e il miglior flusso audio disponibile, per poi unirli. Garantisce la massima qualità possibile.
- -f bestvideo+bestaudio[language=it]+bestaudio
* Una selezione avanzata: scarica il miglior video, prova a prendere l'audio migliore in italiano (
language=it) e, come fallback o aggiunta, l'audio originale migliore. Ideale per avere il doppiaggio.
- --merge-output-format mp4 * Forza la conversione del file finale in formato MP4. Spesso yt-dlp scarica in MKV per compatibilità tecnica; questa opzione assicura che il risultato sia un MP4 standard, leggibile ovunque.
- --playlist-start [NUMERO] * Specifica l'ID o il numero di inizio da cui cominciare a scaricare una playlist. Utile se hai interrotto un download e vuoi riprendere da un punto specifico.
- --playlist-end [NUMERO] * Specifica l'ID o il numero di fine dove fermarsi nel download di una playlist.
- --playlist-reverse * Inverte l'ordine di download della playlist. Inizia dall'ultimo video aggiunto e finisce al primo.
- -i * Ignora gli errori. Se un video nella playlist è privato, cancellato o non disponibile, yt-dlp salta quel video e continua con il successivo invece di bloccarsi. Essenziale per playlist lunghe.
- -a "nome_file.txt"
* Legge gli URL da scaricare da un file di testo chiamato
nome_file.txt. Ogni riga del file contiene un link. Puoi usare il carattere#all'inizio di una riga nel file .txt per commentare e saltare quei link specifici.
- --write-sub --sub-lang it
* Scarica i sottotitoli.
--write-subattiva il download,--sub-lang itspecifica che vogliamo i sottotitoli in italiano.
- -o * Definisce il modello di output (Output Template). Determina come verrà nominato il file scaricato e in quale cartella verrà salvato. Vedi sezione 3 per i dettagli.
- -x * Estrae solo l'audio. Non scarica la parte video. Utile per creare librerie musicali o podcast.
- --audio-format mp3 --audio-quality 320k
* Quando si usa
-x, questa opzione converte l'audio estratto in formato MP3 con un bitrate di 320kbps (massima qualità standard per MP3). Richiede FFmpeg installato e configurato.
3 - Parametri dell'opzione: "-o"
L'opzione -o (output template) è molto potente. Ti permette di decidere esattamente come chiamare i tuoi file e dove organizzarli. Si usano delle variabili tra parentesi %()s che yt-dlp sostituisce con le informazioni reali del video.
- Cos'è: Un modello di stringa che definisce la struttura del nome file e del percorso.
- Spiegazione: Invece di avere file chiamati
video123.mp4, puoi averli chiamatiNomeCanale - Titolo Video.mp4o organizzarli in cartelle automatiche.
Ecco i modelli più comuni:
- Solo titolo
*
"%(title)s.%(ext)s"* Salva il file usando solo il titolo del video e l'estensione corretta (mp4, mkv, etc.).
- Autore e titolo
*
"%(uploader)s - %(title)s.%(ext)s"* Prepende il nome del canale (uploader) al titolo. Molto utile per riconoscere subito chi ha pubblicato il video.
- Data e titolo
*
"%(upload_date)s - %(title)s.%(ext)s"* Aggiunge la data di caricamento (formato AAAAMMGG) all'inizio. Ottimo per ordinare i file cronologicamente.
- Playlist organizzata in cartelle
*
"%(playlist)s/%(title)s.%(ext)s"* Crea una cartella con il nome della playlist e salva i video al suo interno. Mantiene la libreria ordinata.
- Autore e playlist
*
"%(uploader)s/%(playlist)s/%(title)s.%(ext)s"* Crea una struttura annidata: Cartella Canale -> Sottocartella Playlist -> File Video. Massima organizzazione.
3.1 - Esempi comuni di formattazione
Puoi combinare queste variabili come preferisci. Ricorda che %(ext)s inserirà automaticamente l'estensione giusta (.mp4, .mp3, etc.) in base alle altre opzioni che hai scelto.
4 – Esempi Pratici
Prima di lanciare i comandi, prepara il tuo ambiente di lavoro.
4.0 - Cartella di Youtube
Per mantenere ordine, creiamo una cartella dedicata.
- Vai nella cartella "Documenti" del tuo PC.
- Clicca con il tasto destro del mouse in uno spazio vuoto.
- Seleziona "Nuovo" e poi clicca su "Cartella".
- Dai alla cartella il nome: Youtube.
- Entra nella cartella appena creata.
- Clicca con il tasto destro in uno spazio vuoto all'interno della cartella e seleziona "Apri nel terminale" (o "Apri finestra PowerShell qui"). Ora sei pronto a digitare i comandi.
(Nota: Assicurati che yt-dlp.exe, ffmpeg.exe e aria2c.exe siano nella stessa cartella o aggiunti al PATH di sistema, altrimenti dovrai scrivere il percorso completo davanti ad ogni comando).
4.1 - Download Personalizzato (Base)
Questo comando scarica il miglior video e audio, aggiunge metadati, copertina, usa Deno e Aria2, e rinomina il file in modo specifico.
Con Firefox (Cookie):
yt-dlp.exe --cookies-from-browser firefox --js-runtimes deno --downloader aria2c --add-metadata --embed-thumbnail -f bestvideo+bestaudio -o "%(uploader)s - Arduino da zero in 1 ora per principianti.%(ext)s" --merge-output-format mp4 -i <url>
Senza Firefox (Pubblico):
yt-dlp.exe --js-runtimes deno --downloader aria2c --add-metadata --embed-thumbnail -f bestvideo+bestaudio -o "%(uploader)s - Arduino da zero in 1 ora per principianti.%(ext)s" --merge-output-format mp4 -i <url>
Sostituisci <url> con il link del video.
4.2 - Italiano / Lingua Originale (Doppiaggio)
Scarica il video con la migliore qualità, privilegiando l'audio in italiano se disponibile, mantenendo anche l'originale se possibile.
yt-dlp.exe --cookies-from-browser firefox --js-runtimes deno --downloader aria2c --add-metadata --embed-thumbnail --audio-multistreams -f bestvideo+bestaudio[language=it]+bestaudio --compat filename-sanitization -o "%(uploader)s - %(title)s.%(ext)s" --merge-output-format mp4 -i <url>
Nota: Serve Firefox loggato per accedere alle tracce audio multiple (doppiaggi).
4.3 - Filename Sanitization (Sicurezza Nomi)
Usa questo comando se riscontri errori nei nomi dei file a causa di caratteri speciali nei titoli dei video.
yt-dlp.exe --js-runtimes deno --downloader aria2c --add-metadata --embed-thumbnail -f bestvideo+bestaudio --compat filename-sanitization -o "%(uploader)s - %(title)s.%(ext)s" --merge-output-format mp4 -i <url>
4.4 - Cookies (Video Privati/Abbonamenti)
Essenziale per scaricare video che richiedono il login o sono visibili solo agli abbonati del canale.
yt-dlp.exe --cookies-from-browser firefox --js-runtimes deno --downloader aria2c --add-metadata --embed-thumbnail -f bestvideo+bestaudio -o "%(uploader)s - %(title)s.%(ext)s" --merge-output-format mp4 -i <url>
Nota: Assicurati di aver effettuato l'accesso a YouTube su Firefox prima di eseguire il comando.
4.6 - Solo Audio MP3 (Alta Qualità)
Estrae solo l'audio, lo converte in MP3 a 320kbps e pulisce il nome del file.
yt-dlp.exe --cookies-from-browser firefox --js-runtimes deno --downloader aria2c --compat filename-sanitization -o "%(title)s.%(ext)s" -x --audio-format mp3 --audio-quality 320k <url>
4.7 - Sottotitoli in Italiano
Scarica video e audio migliori, includendo i sottotitoli in italiano se disponibili.
yt-dlp.exe --cookies-from-browser firefox --js-runtimes deno --downloader aria2c --add-metadata --embed-thumbnail -f bestvideo+bestaudio --compat filename-sanitization --write-sub --sub-lang it -o "%(uploader)s - %(title)s.%(ext)s" --merge-output-format mp4 -i <url>
Nota: I sottotitoli generati automaticamente o caricati dal creatore verranno salvati come file separati (.vtt o .srt) accanto al video.
4.8 - Download Playlist
Scarica una serie di video da una playlist, organizzandoli in cartelle.
Con Firefox:
yt-dlp.exe --cookies-from-browser firefox --js-runtimes deno --downloader aria2c --add-metadata --embed-thumbnail -f bestvideo+bestaudio --compat filename-sanitization -o "%(uploader)s/%(playlist)s/%(title)s.%(ext)s" --merge-output-format mp4 --playlist-start 1 --playlist-end 30 -i <url_playlist>
Senza Firefox:
yt-dlp.exe --js-runtimes deno --downloader aria2c --add-metadata --embed-thumbnail -f bestvideo+bestaudio --compat filename-sanitization -o "%(uploader)s/%(playlist)s/%(title)s.%(ext)s" --merge-output-format mp4 --playlist-start 1 --playlist-end 30 -i <url_playlist>
--playlist-start 1: Inizia dal primo video.--playlist-end 30: Si ferma al trentesimo video.-i: Salta i video non disponibili nella playlist.- Sostituisci
<url_playlist>con il link della playlist di YouTube.