youtube-dl ha smesso di funzionare


9

Sul mio 12.04 LTS non riesco a scaricare da YouTube tramite youtube-dl. Lo facevo, ma recentemente (per una settimana) non ci riesco. Ho provato molti video e ho lo stesso risultato:

$ youtube-dl -t http://www.youtube.com/watch?v=Sh0ciyuXbJA
[youtube] Setting language
[youtube] Sh0ciyuXbJA: Downloading video webpage
[youtube] Sh0ciyuXbJA: Downloading video info webpage
[youtube] Sh0ciyuXbJA: Extracting video information
Traceback (most recent call last):
  File "/usr/bin/youtube-dl", line 4645, in <module>
    main()
  File "/usr/bin/youtube-dl", line 4636, in main
    _real_main()
  File "/usr/bin/youtube-dl", line 4620, in _real_main
    retcode = fd.download(all_urls)
  File "/usr/bin/youtube-dl", line 869, in download
    ie.extract(url)
  File "/usr/bin/youtube-dl", line 1135, in extract
    return self._real_extract(url)
  File "/usr/bin/youtube-dl", line 1406, in _real_extract
    url_map = dict((ud['itag'][0], ud['url'][0] + '&signature=' + ud['sig'][0]) for ud in url_data)
  File "/usr/bin/youtube-dl", line 1406, in <genexpr>
    url_map = dict((ud['itag'][0], ud['url'][0] + '&signature=' + ud['sig'][0]) for ud in url_data)
KeyError: 'sig'

Sembra che sia un problema di firma. Posso ancora scaricare video tramite vlc. Ma mi piace youtube-dl - è più veloce. L'ho già fatto:

sudo apt-get --purge remove youtube-dl
sudo apt-get install youtube-dl
sudo youtube-dl --update

... ma non ha aiutato.


hai rimosso e reinstallato il pacchetto youtude-dl?
Avinash Raj,

L'ho fatto sudo apt-get --purge remove youtube-dle sudo apt-get install youtube-dlanchesudo youtube-dl --update
battuto il

c'è una cartella youtube-dl all'interno della .configdirectory (che si trovava nella tua home directory)?
Avinash Raj,

no, non è nessuno
sydbeat

1
Questo non è fuori tema, 12.04 non è una versione di sviluppo di Ubuntu
MrVaykadji

Risposte:


11

Youtube aggiorna il suo sistema di sicurezza anti-download abbastanza offeso. Dovresti mantenere aggiornato il tuo youtube-dl. La versione di Ubuntu 12.04 Precis installata per impostazione predefinita è 2012.02.27 (due anni).

Puoi iscriverti al PPA WebUpd8 per ottenere nuove versioni quando sono fuori (ovvero una o due volte a settimana):

sudo add-apt-repository ppa:nilarimogard/webupd8 -y
sudo apt-get update
sudo apt-get dist-upgrade

Troverai anche il pacchetto .deb dell'ultima versione di youtube-dl su quel PPA ( qui e cerca youtube-dl). Installalo con uno strumento GUI come gdebio Ubuntu Software Center, o con queste righe di comando:

cd directory/where/you/downloaded/the/package
dpkg -i youtube-dl*
sudo apt-get install -f

Grazie, ho installato il pacchetto .deb (2014.03.03) come hai detto, e ora funziona ! Grazie!
sydbeat

2
Non è "sbagliato", è vecchio ^^ Dato che lo aggiornano quasi ogni settimana, non manterranno tutte le istantanee nel repository. Sul collegamento PPA troverai tutte le nuove versioni di .deb. Ma grazie per la notifica, ho aggiornato la risposta con un modo che dovrebbe andare in giro abbastanza a lungo (collegamento al percorso "archivio" nel PPA, per ottenere manualmente l'ultima versione se non si desidera installare il PPA)
MrVaykadji,

3

La versione apt-get di youtube-dl è davvero obsoleta. Se non vuoi aggiungere il ppa, puoi installarlo usando git.

Innanzitutto, rimuovi la versione obsoleta:

sudo apt-get purge youtube-dl

Quindi, esegui i seguenti comandi per installare:

git clone https://github.com/rg3/youtube-dl.git
cd youtube-dl
make
sudo make install

Ora, per aggiornare youtube-dl alla versione più recente, basta eseguire il comando seguente:

sudo youtube-dl -U

In alternativa , puoi installare una nuova versione dal repository pypi python:

sudo apt-get install python-pip3
sudo pip3 install youtube-dl

Per aggiornare la versione pip, eseguire il comando seguente:

sudo pip3 install youtube-dl --upgrade
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.