Youtube-dl İle Video İndirme İşlemleri
Youtube üzerinden video indirmek istediğinizde değerlendirilebilecek bir çok 3. parti web sitesi, internet tarayıcısı eklentileri ve masaüstü/mobil uygulamalar mevcut.
Ancak, ücretsiz yazılımların beraberlerinde getirdikleri reklamların sorun haline geldiği, video süresi sınırlandırmaları, video üzeri logo ekleme gibi müdahalelerin can sıkıcılığı ve ayrıca paralel ve/veya art arda indirme işlemlerinin çok işlevsel şekilde gerçekleştirilemediği de aşikar. FFmpeg nedir ve nasıl kullanılır? başlıklı yazıda bahsi geçen libquvi kütüphanesinin artık desteklenmiyor oluşu harici uygulamaların da geliştirilmesine neden oldu. Bu yazıda, ortaya çıkan başarılı örneklerden biri olan Youtube-dl uygulamasından bahsedeceğim.
Youtube-dl
Youtube-dl Youtube başta olmak üzere diğer bir çok web sitesinden özelleştirilebilir (format, alt yazı, kalite vb.) şekilde video indirmeyi sağlayan bir komut satırı uygulamasıdır1. Bir çok platformda kullanılabilen (Python yorumlayıcı gerekli) ve ayrıca platform olarak da sunulabilen uygulamayı Github üzerinden1 indirebilir, desteklenen siteleri ayrıca supported sites sayfasından görüntüleyebilirsiniz2.
Youtube-dl Kurulumu
Unix temelli sistemler (Linux, macOS vs.) için cURL
ile şu şekilde indirilebilir:
sudo curl -L https://yt-dl.org/downloads/latest/youtube-dl -o /usr/local/bin/youtube-dl
sudo chmod a+rx /usr/local/bin/youtube-dl
cURL yerine wget
kullanmak isterseniz:
sudo wget https://yt-dl.org/downloads/latest/youtube-dl -O /usr/local/bin/youtube-dl
sudo chmod a+rx /usr/local/bin/youtube-dl
Homebrew paket yönetici üzerinden indirmek isterseniz:
brew install youtube-dl
Youtube-dl Video İndirme İşlemleri
Youtube-dl uygulamasının temel kullanım şekli şöyle:
youtube-dl [OPTIONLAR] VIDEO-URL [URL...]
Örnek vermek gerekirse;
youtube-dl https://www.youtube.com/watch?v=kCil1q3QdyQ
Kullanım içerisinde sadece video ID’de (yukarıdaki örnek için: kCil1q3QdyQ
) kullanılabilir. Opsiyonlar üzerinden format, alt yazı ve çoklu kullanımlar için aşağıdaki örnek kullanımı inceleyebilirsiniz.
youtube-dl -f 'subs-all-bestvideo[ext=mp4]+bestaudio[ext=m4a]/best[ext=mp4]/best' - --batch-file='~/videos.txt'
Youtube playlist indirme işlemi için şu yolu izleyebilirsiniz:
youtube-dl https://www.youtube.com/watch?list=[playlist-id]
Udemy derslerinizi indirmek için:
youtube-dl -f '-o './Udemy/%(playlist)s/%(chapter_number)s -best[ext=mp4]' -u '[udemy-kullanici-adiniz]' -p '[udemy-kullanici-sifreniz]' %(chapter)s/%(title)s.%(ext)s' https://www.udemy.com/[indirmek-istediginiz-ders-urli]
Twitter videolarını (blob) indirmek için:
youtube-dl -f 'best[ext=mp4]' https://twitter.com/[tweet-url]
Instagram videolarını indirmek için ise:
youtube-dl -f 'best[ext=mp4]' https://instagram.com/[post-url]
Komutta görebileceğiniz üzere “en iyi” seçenekleri üzerinden tüm alt yazıları (tanımlı ise) indiren, indirilecek videoları ise videos.txt dökümanı içerisinden alan bir işlem yönetilmekte. Arama, playlist işlemleri, başlık eşleştirme ve diğer detaylı filtrelemeler gibi komut kullanımıyla ilgili daha detaylı bilgi için youtube-dl -help
ile yardım içeriğini görüntüleyebilirsiniz.