Jaka jest prawdziwa procedura instalacji dla youtube-dl w 20.04?
Nie mam szczęścia z youtube-dl
instalacją w moim systemie 20.04. Oto, czego próbowałem:
sudo apt-get install youtube-dl
WYNIK: Polecenie wykonuje się OK, ale kiedy próbuję cokolwiek pobrać, pojawiają się błędy. Sprawdziłem wersję:
$ youtube-dl --version 2020.03.24 $ which youtube-dl /usr/local/bin/youtube-dl
I zakładać, mam starą wersję
youtube-dl
bo repo Ubuntu jest out-of-date?
Poszukiwanie rozwiązań skłoniło mnie więc do wypróbowania tego:
pip3 install --upgrade youtube-dl
Ta próba jest bardzo pozytywną odpowiedzią tutaj w SE. . Ale najpierw - usunąłem instalację apt za pomocą
sudo apt-get remove youtube-dl
Ale kiedy sprawdzam, czy wersja jest weryfikowana, utknąłem na starej wersji!
$ youtube-dl --version 2020.03.24
Więc usuńmy to, zanim spróbujemy czegoś innego:
$ 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
Whoa !? Właśnie odinstalowałem aktualną wersję!
sudo snap install youtube-dl
Aka „Metoda 2” z tej witryny internetowej , która wygląda następująco:
$ 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
Co sprawia, że jestem zdezorientowany i oszołomiony nie do naprawienia. Używam youtube-dl
od ponad roku i instaluję na systemach macOS i Debian - bez żadnych problemów. Wiem, że Ubuntu jest inny , ale ... to jest mylące.
Jak to naprawić?
Odpowiedzi
Jeśli zainstalujesz youtube-dl
pakiet z archiwum Ubuntu 20.04, nie spowoduje to powstania żadnego /usr/local/bin/youtube-dl
pliku. Więc prawdopodobnie wcześniej zainstalowałeś youtube-dl
w inny sposób niż jeden ze sposobów, o których wspomniałeś w swoim pytaniu, i to może być przyczyną zamieszania.
Jeśli nie pamiętasz, jak to się stało, proponuję po prostu usunąć ten plik:
sudo rm /usr/local/bin/youtube-dl
Sposób pip3 to dobry sposób na uzyskanie najnowszej dostępnej wersji. Należy jednak pamiętać, że jeśli zainstalujesz za pośrednictwem pip3 jako własny użytkownik (tj. Bez sudo
), youtube-dl
plik wykonywalny zakończy się $HOME/.local/bin
i może być konieczne wylogowanie się i ponowne zalogowanie, aby włączyć ten katalog PATH
.
Alternatywne rozwiązanie:
Tło:
Są to instrukcje instalacji na miejscu GitHub YT-DL, że skutecznie pobrać kopię najnowszej wersji youtube-dl
do /usr/local/bin
- są one dość proste nawet mogłem je śledzić.
Ale to prowadzi do innego problemu - być może problem z Ubuntu, problem z Pythonem lub youtube-dl
problem ... Nie wiem, czyj to problem, ale oto problem. Po wykonaniu instrukcji instalacji yt-dl spróbuj sprawdzić wersję:
$ youtube-dl --version
/usr/bin/env: ‘python’: No such file or directory
Jak rozumiem, oznacza to po prostu, że system (Ubuntu) i youtube-dl
nie może rozwiązać, gdzie jest zainstalowany Python. Ale wiem, że mam zainstalowany Python3:
$ which python
$ which python3
/usr/bin/python3
A ponieważ nie zainstalowałem Python3, wydaje się to oznaczać, że Ubuntu 20.04 został dostarczony z zainstalowanym Python3, ale Python (2) nie został zainstalowany.
Rozwiązanie 1:
$ sudo apt-get install python-is-python3
Sprawdź / zweryfikuj rozwiązanie:
$ youtube-dl --version
2020.11.29
Więc zostało to przetestowane i zweryfikowane w moim systemie - FWIW.
Rozwiązanie 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
Sprawdź, czy to działa (po usunięciu poprzedniego rozwiązania 1):
$ youtube-dl --version
2020.11.29
Kredyty dla @ mighty9245 za to rozwiązanie .
Uzupełnienie:
Osobiście to ręczne rozwiązanie instalacyjne działa najlepiej dla mnie, ponieważ nie interesuje mnie uwikłanie się we wszystkie minuty Pythonic; środowiska wirtualne i inne artefakty. I chociaż jest rozczarowujące, że repozytorium Ubuntu nie może być lepsze niż wersja, youtube-dl
która ma 8 miesięcy , ta procedura instalacji ma jedną przewagę nad apt
repozytorium:
Ręczna instalacja
youtube-dl
pozwala na aktualizację bezpośrednio i natychmiast poprzez:
sudo youtube-dl -U
.
Z informacji o wydaniu Focal Fossa :
Python3 domyślnie
W 20.04 LTS Python zawarty w systemie podstawowym to Python 3.8. Python 2.7 został przeniesiony do uniwersum i nie jest domyślnie uwzględniany w żadnych nowych instalacjach.
Pozostałe pakiety w Ubuntu, które wymagają Pythona 2.7, zostały zaktualizowane, aby używać / usr / bin / python2 jako ich interpretera, a / usr / bin / python nie jest domyślnie obecny w żadnych nowych instalacjach. itd itd