Scarica i video di YouTube (e altro) dalla riga di comando di Linux

Rispondi
cmo
Reactions score: 0
mag 2020 04 12:02

Scarica i video di YouTube (e altro) dalla riga di comando di Linux

Messaggio da cmo

Non mancano i contenuti video sul Web. Quasi tutti richiedono una connessione Internet attiva per divertirsi. Cosa succede se non si dispone sempre di una connessione Internet? Cosa succede se si desidera scaricare i video per la visualizzazione offline? In questo breve suggerimento di Linux ti mostreremo come scaricare video di YouTube dalla riga di comando di Linux.
Prima di proseguire, va detto che il download di video è contrario ai termini di servizio di YouTube . È probabilmente contro altri termini di servizio della maggior parte delle altre piattaforme.
Sommario

Presentazione di youtube-dl - Downloader di video da riga di comando
Youtube-dl è un programma Python per il download di video dalla riga di comando. Poiché è scritto in Python, può essere utilizzato praticamente su qualsiasi sistema operativo. Funzionerà su UNIX, Linux, MacOS e Windows.
Supporta un gran numero di siti di video, tra cui Youtube, Break, BuzzFeed e sì, ovviamente, PornHub, YouPorn e molti altri siti per adulti. Per un elenco completo dei siti supportati, consultare il collegamento alle risorse alla fine di questo articolo.
Installazione di youtube-dl Video Downloader
Puoi facilmente installare youtube-dl con la maggior parte dei gestori di pacchetti. Tieni presente che potresti non ottenere la versione più recente, a seconda di ciò che è nei tuoi repository. Se desideri la versione più aggiornata, ti consiglio di installare direttamente dal loro sito Web o di usare pip. Un altro vantaggio dell'installazione diretta dal loro sito Web è che è possibile aggiornarlo non appena è disponibile una nuova versione. Se esegui l'aggiornamento tramite un gestore pacchetti, dovrai attendere che il pacchetto venga aggiornato nel repository.
Installazione DNF su Fedora, CentOS o Red Hat

Codice: Seleziona tutto

sudo dnf install youtube-dl

Installazione APT su Ubuntu, Debian o Mint

Codice: Seleziona tutto

sudo apt install youtube-dl

Installazione Direttamente da yt-dl.org
Puoi scaricare lo script Python pronto per l'uso direttamente dal loro sito usando curl. Tutto quello che devi fare è impostare le autorizzazioni e sei attivo e funzionante.
Scarica il file e salvalo su / usr / local / bin / youtube-dl:

Codice: Seleziona tutto

sudo curl -L https://yt-dl.org/downloads/latest/youtube-dl -o /usr/local/bin/youtube-dl

Imposta le autorizzazioni per consentirne l'esecuzione:

Codice: Seleziona tutto

sudo chmod a+rx /usr/local/bin/youtube-dl

Installazione tramite PIP
In alternativa, puoi installare facilmente anche tramite pip.

Codice: Seleziona tutto

sudo -H pip install --upgrade youtube-dl

Aggiornamento di youtube-dl
Se installato da un gestore di pacchetti, si otterrà automaticamente l'aggiornamento quando è disponibile nel repository. Riceverai una notifica di questo se provi ad aggiornare.

Codice: Seleziona tutto

[mcherisi@putor ~]$ youtube-dl -U
It looks like you installed youtube-dl with a package manager, pip, setup.py or a tarball. Please use that to update.

Tuttavia, se installato dal loro sito Web, è possibile aggiornare il programma in qualsiasi momento utilizzando l' 

Codice: Seleziona tutto

-U

opzione.

Codice: Seleziona tutto

[mcherisi@putor ~]$ youtube-dl -U
youtube-dl is up-to-date (2020.05.03)

Utilizzo di base e download del tuo primo video
Una volta installato youtube-dl, è semplice scaricare il tuo primo video. Copia semplicemente l'URL da YouTube e passalo come argomento al comando. Di solito mi piace racchiudere l'URL tra virgolette singole per evitare che uno dei caratteri speciali venga interpretato dalla shell.

Codice: Seleziona tutto

youtube-dl 'https://www.youtube.com/watch?v=hG0yCiXQzpI&t=8s'

Immagine
Ho una configurazione speciale che sta forzando mp4 e la migliore qualità possibile (ne parleremo più avanti). A volte, i file video e audio vengono scaricati separatamente e uniti in un file mkv. In tal caso, puoi facilmente convertire mkv in mp4 .
Opzioni Youtube-dl
Il numero di opzioni disponibili per youtube-dl è impressionante. Ovviamente non li tratteremo tutti qui, ma toccheremo le opzioni più comuni.
Controlla i formati disponibili
L' 

Codice: Seleziona tutto

-F

opzione (--list-formati) ti consente di vedere i formati disponibili, ognuno con un codice di formato. Ciò consente di scaricare il formato / risoluzione / fps desiderati. Ecco un elenco di opzioni disponibili usando il nostro video di esempio:

Codice: Seleziona tutto

[mcherisi@putor YouTube]$ youtube-dl -F 'https://www.youtube.com/watch?v=hG0yCiXQzpI&t=8s'
[youtube] hG0yCiXQzpI: Downloading webpage
[youtube] hG0yCiXQzpI: Downloading MPD manifest
[info] Available formats for hG0yCiXQzpI:
format code  extension  resolution note
139          m4a    audio only DASH audio 57k , m4a_dash container, mp4a.40.5@ 48k (22050Hz)
251          webm  audio only DASH audio 133k , webm_dash container, opus @160k (48000Hz)
140          m4a    audio only DASH audio 166k , m4a_dash container, mp4a.40.2@128k (44100Hz)
278          webm  256x144  DASH video 95k , webm_dash container, vp9, 30fps, video only
160          mp4    256x144  DASH video 108k , mp4_dash container, avc1.4d400b, 30fps, video only
134          mp4    640x360  DASH video 331k , mp4_dash container, avc1.4d401e, 30fps, video only
244          webm  854x480  DASH video 752k , webm_dash container, vp9, 30fps, video only
135          mp4    854x480  DASH video 1155k , mp4_dash container, avc1.4d4014, 30fps, video only
247          webm  1280x720 DASH video 1505k , webm_dash container, vp9, 30fps, video only
137          mp4    1920x1080 DASH video 2476k , mp4_dash container, avc1.640028, 30fps, video only
248          webm  1920x1080 DASH video 2646k , webm_dash container, vp9, 30fps, video only
18          mp4    640x360  360p  281k , avc1.42001E, mp4a.40.2@ 96k (44100Hz), 8.70MiB
22          mp4    1280x720  720p  909k , avc1.64001F, mp4a.40.2@192k (44100Hz) (best)

Come puoi vedere ci sono diversi formati disponibili. Il video di massima qualità viene sempre evidenziato con (migliore) alla fine.
Download del formato desiderato
Puoi scaricare il formato desiderato usando l' 

Codice: Seleziona tutto

-f

opzione seguita dal codice del formato nell'output sopra. In questo esempio vogliamo scaricare la migliore qualità possibile, quindi sceglieremo il formato codice 22.

Codice: Seleziona tutto

youtube-dl -f 22 'https://www.youtube.com/watch?v=hG0yCiXQzpI&t=8s'

Scarica una playlist YouTube completa
Il bello di questo strumento è che è semplice ma robusto. Per scaricare tutti i video in una playlist, basta passare la playlist come argomento proprio come se fosse un video.

Codice: Seleziona tutto

[mcherisi@putor ~]$ youtube-dl 'https://www.youtube.com/watch?v=eC8Qygp2lvs&list=PL29tgMqrJrhhRSm4FReJSi6nRxT_0UXvj'
[youtube:playlist] Downloading playlist PL29tgMqrJrhhRSm4FReJSi6nRxT_0UXvj - add --no-playlist to just download video eC8Qygp2lvs
[youtube:playlist] PL29tgMqrJrhhRSm4FReJSi6nRxT_0UXvj: Downloading webpage
[download] Downloading playlist: Linux Quick Tips
[youtube:playlist] playlist Linux Quick Tips: Downloading 9 videos
..OUTPUT TRUNCATED...

Puoi anche scaricare la playlist in ordine inverso ( 

Codice: Seleziona tutto

--playlist-reverse

) o casuale ( 

Codice: Seleziona tutto

--playlist-random

).
Bypass Geo Restriction
È possibile ignorare la limitazione geografica sulla maggior parte dei siti Web utilizzando l' 

Codice: Seleziona tutto

--geo-bypass

opzione per modificare l'intestazione HTTP X-Forwarded-For.

Codice: Seleziona tutto

[mcherisi@putor ~]$ youtube-dl --geo-bypass 'https://www.youtube.com/watch?v=eC8Qygp2lvs&list=PL29tgMqrJrhhRSm4FReJSi6nRxT_0UXvj'

Limita la velocità di download
Alcuni siti dispongono di controlli per bloccare il tuo indirizzo IP se scarichi grandi quantità di dati troppo velocemente. In questo caso, puoi limitare il download a qualcosa di ragionevole. Questo è utile (soprattutto su connessioni più lente) per evitare di saturare la connessione. Se limiti la velocità di download, puoi potenzialmente utilizzare la tua connessione per altre cose durante il download del video.
Basta passare l' 

Codice: Seleziona tutto

-r

opzione (--limit-rate) seguita dalla velocità desiderata. Puoi fare riferimento alla velocità in K o M.
Limita la velocità di download a 150 KB:

Codice: Seleziona tutto

youtube-dl -r 150K https://www.youtube.com/watch?v=eC8Qygp2lvs

Limita la velocità di download a 2 MB:

Codice: Seleziona tutto

[mcherisi@putor ~]$ youtube-dl -r 2M https://www.youtube.com/watch?v=eC8Qygp2lvs
[youtube] eC8Qygp2lvs: Downloading webpage
[youtube] eC8Qygp2lvs: Downloading MPD manifest
[dashsegments] Total fragments: 56
[download] Destination: Creating Encrypted and Password Protected Archives on Linux Command Line-eC8Qygp2lvs.f137.mp4
[download]  16.1% of ~18.31MiB at  1.99MiB/s ETA 00:16

Creazione di una configurazione personalizzata
Se trovi le opzioni che ti piacciono, puoi facilmente impostarle come predefinite. Basta creare un file chiamato 

Codice: Seleziona tutto

config

nella tua 

Codice: Seleziona tutto

/home/<username>/.config/youtube-dl/

directory. Questa directory non esiste per impostazione predefinita, quindi dovrai crearla.

Codice: Seleziona tutto

mkdir ~/.config/youtube-dl

Ora crea un file chiamato 

Codice: Seleziona tutto

config

nella directory sopra e riempilo con le tue opzioni preferite. Queste opzioni verranno utilizzate per impostazione predefinita ogni volta che esegui youtube-dl.
Uso le seguenti opzioni nella mia configurazione predefinita. Questo mi permette di scaricare facilmente la migliore qualità audio e video nel contenitore mp4.

Codice: Seleziona tutto

[mcherisi@putor ~]$ cat ~/.config/youtube-dl/config 
-f 'bestvideo[ext=mp4]+bestaudio[ext=m4a]'

Conclusione
Questo articolo dovrebbe servire come una buona introduzione a youtube-dl. Tuttavia, c'è molto di più che puoi fare con questa incredibile utility. Per ulteriori informazioni, consultare le risorse di seguito.
risorse

Rispondi