To jest proste jak budowa cepa
Stare przysłowie ludowe
Po raz trzeci do serii trafia aplikacja konsolowa. Po raz trzeci jest to aplikacja tak absurdalnie prosta w obsłudze, że nie wiem po co ludzie robią te same rzeczy, ale z GUI. No dobra, wiem po co – bo się da. Bo jest zapotrzebowanie na takie aplikacje. Bo można sobie doinstalować dodatek do swojej ulubionej przeglądarki robiący to samo a nawet znacznie więcej.
Youtube-dl
Youtube-dl jest kawałkiem kodu napisanym w Pythonie dedykowanym tylko jeden funkcji – ściąganiu filmów z tego serwisu. Trafiłem na niego przypadkiem, kiedy miałem ciche dni z Flash Playerem (wywalał się przy 1080p. Po ostatniej aktualizacji 64 bitowa wersja działa poprawnie). Urzekła mnie prostota tego skryptu:
dwimenor@16:06:25:~$ youtube-dl http://www.youtube.com/watch?v=1g50CTNOrxw
[youtube] Setting language
[youtube] 1g50CTNOrxw: Downloading video webpage
[youtube] 1g50CTNOrxw: Downloading video info webpage
[youtube] 1g50CTNOrxw: Extracting video information
[download] Destination: 1g50CTNOrxw.mp4
[download] 100.0% of 546.35M at 3.36M/s ETA 00:00
pobiera film w najwyższej jakości do aktualnego katalogu. Żadnego bawienia się w „jaką wersję pobrać” czy „gdzie zapisać” lub „jakiej aplikacji użyć do odtworzenia ściągniętego materiału”.
Pominięcie Flasha w procesie odtwarzania ma tą zaletę, że znacznie zmniejsza zapotrzebowanie na moc przerobową komputera. Jeżeli macie słaby sprzęt dławiący się przy Flashu i 1080p to warto się zastanowić nad jakąś formą ściągania filmów z YouTube z pominięciem Flasha. Tym bardziej, że stacjonarne odtwarzacze potrafią korzystać z akceleracji sprzętowej, a linuksowy Flash jest pod tym względem humorzasty.
Instalacja
Youtube-dl nie ma paczek .deb (a przynajmniej nie słyszałem). Jednakże jest to skrypt Pythona skondensowany do jednego pliku i wystarczy go umieścić gdzieś na naszej ścieżce dostępowej. Możliwości są dwie:
wget https://raw.github.com/rg3/youtube-dl/2011.08.04/youtube-dl -O ~/.local/bin/youtube-dl
chmod +x ~/.local/bin/youtube-dlsudo wget https://raw.github.com/rg3/youtube-dl/2011.08.04/youtube-dl -O /usr/bin/youtube-dl
sudo chmod +x /usr/bin/youtube-dl
Pierwsza opcja zainstaluje program tylko aktualnemu użytkownikowi. Druga zainstaluje go w całym systemie.
Jeżeli nie youtube-dl, to co?
Oczywistym faworytem jest tu aplikacja Minitube, ale to raczej dla użytkowników KDE. Totem z środowiska GNOME ma odpowiednią do tego wtyczkę. W sieci piszą, że VLC potrafi sobie poradzić z tym zadaniem (plik->otwórz strumień sieciowy) ale to u mnie nie działa. MPlayer potrzebuje zaś strasznego kombinowania aby osiągnąć taki efekt.
Inne możliwości youtube-dl
--extract-audio
Podanie tej opcji spowoduje wyciągnięcie ścieżki dźwiękowej z ściągniętego pliku i zapisanie do pliku .aac (wymaga zainstalowanego w systemie ffmpeg i ffprobe. Oba są w repozytoriach)
--get-thumbnail --get-title --get-url --get-description --get-filename
Te opcje spowodują, że zamiast filmu zostaną pobrane i wyświetlone na ekranie następujące informacje: link do miniaturki filmu, tytuł filmu, bezpośredni link do filmu, opis filmu, nazwa pliku
--batch-file=PLIK
Skrypt pobierze wszystkie filmy, do których linki znajdują się w pliku PLIK
--literal
Do nazwy ściągniętego pliku z filmem zostanie doklejony jego oryginalny tytuł.
--update
Aktualizacja skryptu. Kiedy Google zmienia swoje API skrypt też musi zostać zaktualizowany. Uruchomienie youtube-dl z tą opcją spowoduje rozpoczęcie autoaktualizacji. Jeżeli instalowałeś skrypt w systemie jako administrator, to aby zaktualizować skrypt też musisz użyć uprawnień administratora (sudo przed poleceniem).
A ma to to możliwość wyboru jakości czy zawsze ściąga możliwe najlepszą?
No narzędzie świetne ale jeśli ktoś nie ma szybkiego łącza to nie koniecznie pragnie ściągać tyle zbędnych danych. Szkoda, że nie ma Free Download Managera pod Linuxa bo ma świetną wtyczkę do FF.
@Admc
Popatrz w opcjach programu (youtube-dl –help)
@pawiecki
Mówisz tak jakby mało download managerów było pod linuksem. I mało wtyczek do FF do ściągania.
Minitube tylko dla KDE? Niby czemu? Zależności w postaci QT (które i tak się przyda w innych programach) oraz Phonona (ten to jednak nie przyda się poza KDE) nie jest niby tak dużo, a zysk wymierny 🙂 Sam korzystam w XFCE.
youtube-dl jest w repozytoriach Debiana i Ubuntu.
http://xviservicethief.sourceforge.net/ – fajny program, który potrafi działać na zasadzie przeciągnij-upuść.
ale youtube-dl rzeczywiście wydaje się prościutki i przyjemny. chętnie wypróbuję. dzięki!
@brezniew
Nie wiem jak w debianie, ale jeżeli chodzi o ubuntu, to tylko beta oneiric ma wersję która działa. Starsze wersje, wliczając tegoroczne natty, ma starsze i nie działające wersje.
@Van
Na ubuntu.pl zawsze zawsze starano nie mieszać środowisk. Przynajmniej w opisach, poradach, remixach. Ja się staram trzymać tego trendu w tej serii artykułów. Co nie zmienia faktu, że mam u siebie jakieś 30% xfe (aby xfburn działał) i zdrowo ponad połowę KDE (dla różnych programów).
@Dwimenor
Ok, nie wiedziałem o tym zwyczaju. Ale ciężko bez niektórych aplikacji QT żyć, zwłaszcza, kiedy ich instalacja nie wiąże się z instalacją bibliotek KDE. Sam na XFCE nie wyobrażam sobie systemu bez Guarddoga, Clementine, Minitube, TeamSpeaka 3, QNapi, SMPlayera i Deluge.
Przyda się. Choć ja najczęściej korzystam z tubeminator.com, bo mogę jeszcze przed pobraniem przekonwertować plik do takiego formatu, który obsługuje mój odtwarzacz przenośny.
Pod gentoo macie w overlayu zugaina.
Pod FF jest wtyczka DownloadHelper, obsługuje masę serwisów poza yt 😉
po co komu programy do ściągania filmików we flashu, przecież gdy ogląda się jakiś filmik to plik tymczasowy z tym filmikiem jest w folderze /tmp i dlatego jak się naciśnie guzik żeby obejrzeć jeszcze raz albo jak się przewinie suwakiem wstecz to plik nie musi być jeszcze raz pobierany z internetu tylko wczytuje się z naszego dysku z folderu /tmp i można go sobie zwyczajnie skopiować w inne miejsce (bo w folderze /tmp zniknie jak się opuści stronę), przecież tak jest prościej – przynajmniej dla mnie
[quote comment=”49294″]po co komu programy do ściągania filmików we flashu, przecież gdy ogląda się jakiś filmik to plik tymczasowy z tym filmikiem jest w folderze /tmp i dlatego jak się naciśnie guzik żeby obejrzeć jeszcze raz albo jak się przewinie suwakiem wstecz to plik nie musi być jeszcze raz pobierany z internetu tylko wczytuje się z naszego dysku z folderu /tmp i można go sobie zwyczajnie skopiować w inne miejsce (bo w folderze /tmp zniknie jak się opuści stronę), przecież tak jest prościej – przynajmniej dla mnie[/quote]
Nawet nie chce sobie wyobrażać szukania akurat tego jednego pliku.
Ale… nie mogę znaleźć niczego w folderze /tmp, co by pochodziło od Firefoksa. Z tego co pamiętam, to F. trzyma takie pliki w folderze Cache. Ale jest ich tu masa. Oczywiście, da się to posortować po dacie ale
skoro jest program, który zrobi to wszystko szybciej… 😉
Pingback: Programy, których (być może) nie znacie. Cz. 17: Sinthgunt :: Czytelnia Ubuntu
Nawet nie chce sobie wyobrażać szukania akurat tego jednego pliku.
Ale… nie mogę znaleźć niczego w folderze /tmp, co by pochodziło od Firefoksa. Z tego co pamiętam, to F. trzyma takie pliki w folderze Cache. Ale jest ich tu masa. Oczywiście, da się to posortować po dacie ale
skoro jest program, który zrobi to wszystko szybciej… ;)[/quote]
Nie wiem, u mnie jest tak że jak oglądam jakiś filmik we flashu np. na youtube to plik tymczasowy pojawia się w głównym folderze /tmp jako plik bez rozszerzenia, który pojawia się po naciśnięciu play na stronie gdzie jest dany filmik i znika po opuszczeniu strony , natomiast cache firefoksa mam w folderze domowym ale cache sam nie znika. Mi taka metoda bardziej odpowiada bo mogę zapisać filmik po oglądnięciu i nie muszę go jeszcze raz ściągać.
można jeszcze szybciej wystarczy :
1. firefox + byTubeD + Downthemall.
Po restarcie przeglądarki wchodzimy na dowolny profil YT klikamy ByTubeD i następnie z okienka wybieramy pliki do pobrania i z dostępnych opcji po prawej stronie okna na dole wybieramy generuj listę html i gdy się to już zakończy i otworzy nowa zakładka w niej wybieramy downthemall i zaznaczamy wszystkie i leci pełną parą pobieranie.
2. do pojedyńczych plików wystarczy również to pierwsze rozwiązanie bądź jakikolwiek dodatek „flash” z tych dostępnych w firefoxie.
Oprócz wymienionych dodatków do firefoxa, konsolowego youtube-dl kiedyś był jeszcze taki program jak PyTube(nie wiem czy jeszcze rozwijany), z yt pobiera też JDownloader, o ile się nie mylę MiniTube.
A oglądać można również w umplayerze, totemie itp.
Mam kłopot z poprawnym zainstalowaniem tego programu. Pierwsze polecenie z opcji numer dwa dziala. Ale polecenia sudo cmod +x juz nie przyjmuje… O co chodzi?
W drugim poleceniu jest literka 'h’:
chmod +x
Tam się źle zagnieździł tag „code” i przez to źle się wyświetlało. Już poprawiłem.
co robię źle że mi nie sciąga?
zxc@zxc2:/$ youtube-dl http://www.youtube.com/watch?v=t-ouxPhYy7Y
bash: /usr/bin/youtube-dl: Brak dostępu