Skip to content

python ile youtube dan oynatma listesini mp3 olarak indirmek

python ile youtube dan mp3 indirmek konu yazı sonrası tek tek indirmek yerine playlisti tek bir sefer nasıl indirebiliriz sorusu geldi..

bunu takibi yapabiliriz.. ufak bir değişiklik ile oynatma listesini indirebiliriz.. kodumuz aşagıdaki şekilde olacaktır.

import yt_dlp

def oynatma_listesi_indir(oynatma_listesi_adresi, output_folder="mp3_klasor"):
    options = {
        'format': 'bestaudio/best',
        'outtmpl': f'{output_folder}/%(title)s.%(ext)s',  
        'postprocessors': [{
            'key': 'FFmpegExtractAudio',
            'preferredcodec': 'mp3',
            'preferredquality': '192',
        }],
        'noplaylist': True  
    }

    with yt_dlp.YoutubeDL(options) as ydl:
        ydl.download([oynatma_listesi_adresi])

# Kullanım
oynatma_listesi_adresi = "https://www.youtube.com/playlist?list=<oynatma_listesi_id"
oynatma_listesi_indir(oynatma_listesi_adresi, output_folder="mp3_klasor")

burada dikkat edilmesi gereken nokta listedeki tüm videoların aktif olmasıdır. kodda hata denetimi yapmadığımız için herhangi bir video silindiyse kod o noktada kesilecektir.

python ile youtube dan mp3 indirmek

bir çoğumuzun hayatından artık mp3 dosyaları çıktı. artık sevidğimiz müzikleri ya online dinliyoruz yada tercih ettiğimiz bir uygulamanın offline modunu kullanıyoruz.

benim gibi bir kaç mp3 indirmek isteyen çıkabilir.

bunun için reklamlarla dolu video dosya içerisinden ses dosyasını kaydetmenize sağlayan bir sürü site var.. isterseniz bunlardan birini kullanabillirsiniz.. ama ben bunlarla uğraşmak istemediğim için basit bir uygulama yapmak istedim..

kodu tabiki pythonda yazacağız.. kod sırasında bize yardımcı olacak bir çok modül mevcut. bunların bir çoğu ffmpeg kullanıyor ve pc nizde kurulu olmasını şart koşuyor.

bu noktada yt_dlp yardımımıza yetişiyor. denediğim modüller arasında en sağlık çalışanı yt_dlp oldu.

şimdi adresini bildiğimiz bir youttube url için yt_dlp modulunu kullanarak mp3 dosyasını nasıl elde ederiz basit bir örnek yapalım.

import yt_dlp

def muzik_dosyasi_indir(video_url, output_folder="mp3_klasor"):
    options = {
        'format': 'bestaudio/best',
        'outtmpl': f'{output_folder}/%(title)s.%(ext)s',
        'postprocessors': [{
            'key': 'FFmpegExtractAudio',
            'preferredcodec': 'mp3',
            'preferredquality': '192',
        }],
        'noplaylist': True
    }

    with yt_dlp.YoutubeDL(options) as ydl:
        ydl.download([video_url])

video_url = "https://www.youtube.com/watch?v=<video_id>"
muzik_dosyasi_indir(video_url, output_folder="mp3_klasor")

temel kodumuz yukarıdaki gibi olacaktır… mp3 olarak indirmek istediğiniz bir video dosyasının idsini koddaki <video_id> ile değiştirir ve kodu çalıştırsanız aşagıdaki gibi çıktı ile çarşılacaksınız.

[youtube] Extracting URL: https://www.youtube.com/watch?v=8umGN3KiGY4
[youtube] 8umGN3KiGY4: Downloading webpage
[youtube] 8umGN3KiGY4: Downloading tv client config
[youtube] 8umGN3KiGY4: Downloading player e7567ecf
[youtube] 8umGN3KiGY4: Downloading tv player API JSON
[youtube] 8umGN3KiGY4: Downloading ios player API JSON
[youtube] 8umGN3KiGY4: Downloading m3u8 information
[info] 8umGN3KiGY4: Downloading 1 format(s): 251
[download] Destination: mp3_klasor\Passenger - Let Her Go.webm
[download] 100% of    4.05MiB in 00:00:00 at 8.79MiB/s
[ExtractAudio] Destination: mp3_klasor\Passenger - Let Her Go.mp3
Deleting original file mp3_klasor\Passenger - Let Her Go.webm (pass -k to keep)

Back To Top