Qual é o verdadeiro procedimento de instalação do youtube-dl no 20.04?

Nov 28 2020

Não estou tendo sorte ao me youtube-dlinstalar em meu sistema 20.04. Aqui está o que tentei:

  1. sudo apt-get install youtube-dl

    RESULTADO: O comando é executado bem, mas quando tento baixar qualquer coisa, recebo erros. Eu verifiquei a versão:

    $ youtube-dl --version
    2020.03.24
    $ which youtube-dl
    /usr/local/bin/youtube-dl
    

    Eu supor que eu tenho uma versão antiga do youtube-dlporque repo do Ubuntu é out-of-date?

Então, a busca por soluções me levou a tentar isso:

  1. pip3 install --upgrade youtube-dl

    Esta tentativa é uma resposta altamente votada aqui no SE. . Mas primeiro - removeu o apt-installation usandosudo apt-get remove youtube-dl

    Mas quando eu verifico a versão, continuo preso na versão antiga!

    $ youtube-dl --version
    2020.03.24
    

    Então, vamos mudar isso antes de tentar outra coisa:

    $ pip3 uninstall youtube-dl
    Found existing installation: youtube-dl 2020.11.26
    Uninstalling youtube-dl-2020.11.26:
      Would remove:
        /home/walker/.local/etc/bash_completion.d/youtube-dl.bash-completion
        /home/walker/.local/etc/fish/completions/youtube-dl.fish
        /home/walker/.local/lib/python3.8/site-packages/youtube_dl-2020.11.26.dist-info/*
        /home/walker/.local/lib/python3.8/site-packages/youtube_dl/*
        /home/walker/.local/share/doc/youtube_dl/README.txt
        /home/walker/.local/share/man/man1/youtube-dl.1
    Proceed (y/n)? y
      Successfully uninstalled youtube-dl-2020.11.26
    

    Uau!? Acabei de desinstalar a versão atual!

  2. sudo snap install youtube-dl

    Chamado de "Método 2" neste site , que funcionava da seguinte forma:

    $ sudo snap install youtube-dl
    youtube-dl 2020.11.17+gitd65d891 from Joe Borg (joeborg) installed
    $ youtube-dl --version
    bash: /usr/bin/youtube-dl: No such file or directory
    $ which youtube-dl
    /usr/local/bin/youtube-dl
    

O que me deixa confuso e desnorteado além do reparo. Eu usei youtube-dlpor mais de um ano e instalei em sistemas macOS e Debian - sem problemas. Eu sei que o Ubuntu é diferente , mas ... isso é confuso.

Como faço para corrigir isso?

Respostas

7 GunnarHjalmarsson Nov 29 2020 at 01:43

Se você instalar o youtube-dlpacote do arquivo 20.04 Ubuntu, não resultará em nenhum /usr/local/bin/youtube-dlarquivo. Portanto, provavelmente você já instalou youtube-dlde alguma outra forma que não uma das maneiras mencionadas em sua pergunta, e essa pode ser a causa da confusão.

Se você não se lembra de como isso aconteceu, sugiro que simplesmente exclua esse arquivo:

sudo rm /usr/local/bin/youtube-dl

O método pip3 é uma boa maneira de obter a versão mais recente disponível. Observe, porém, que se você instalar via pip3 como seu próprio usuário (ou seja, sem sudo), o youtube-dlexecutável acabará entrando $HOME/.local/bine você pode precisar fazer logout e login novamente para incluir esse diretório PATH.

3 deWalker Nov 29 2020 at 23:13

Uma solução alternativa:

Fundo:

Existem instruções de instalação no site GitHub de yt-dl que efetivamente baixam uma cópia da versão mais recente do youtube-dlpara /usr/local/bin- elas são simples o suficiente até eu poderia segui-las.

Mas isso leva a outro problema - possivelmente um problema do Ubuntu, um problema do Python ou um youtube-dlproblema ... Não sei de quem é o problema, mas aqui está o problema. Depois de seguir as instruções de instalação do yt-dl , tente verificar a versão:

$ youtube-dl --version
/usr/bin/env: ‘python’: No such file or directory

Pelo que entendi, isso significa apenas que o sistema (Ubuntu) e youtube-dlnão pode resolver onde o Python está instalado. Mas eu sei que tenho o Python3 instalado:

$ which python
$ which python3
/usr/bin/python3

E como eu não instalei o Python3, isso parece significar que o Ubuntu 20.04 veio com o Python3 instalado, mas o Python (2) não foi instalado.

Solução 1:

$ sudo apt-get install python-is-python3

Verificar / verificar solução:

$ youtube-dl --version
2020.11.29

Portanto, isso foi testado e verificado no meu sistema - FWIW.

Solução 2:

$ sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 10
update-alternatives: using /usr/bin/python3 to provide /usr/bin/python (python) in auto mode

Verifique se isso funciona (depois de remover a solução 1 anterior):

$ youtube-dl --version
2020.11.29

Créditos para @ mighty9245 por esta solução .

Termo aditivo:

Pessoalmente, esta solução de instalação manual funciona melhor para mim, pois não tenho interesse em me envolver em todas as minutas Pythônicas; ambientes virtuais e outros artefatos. E enquanto é decepcionante que repo do Ubuntu não pode melhor fazer do que uma versão do youtube-dlque é 8 meses de idade , este procedimento de instalação tem uma vantagem sobre o aptrepo:

A instalação manual dos youtube-dlpermite atualizar direta e imediatamente via:
sudo youtube-dl -U.


Das notas de lançamento do Focal Fossa :

Python3 por padrão

No 20.04 LTS, o python incluído no sistema básico é o Python 3.8. O Python 2.7 foi movido para o universe e não é incluído por padrão em nenhuma nova instalação.

Os pacotes restantes no Ubuntu que requerem Python 2.7 foram atualizados para usar / usr / bin / python2 como seu intérprete, e / usr / bin / python não está presente por padrão em novas instalações. etc etc