Вот несколько способов конвертировать видео YouTube в файлы MP3 с примерами кода:
Метод 1: использование youtube-dl и FFmpeg (Python)
import youtube_dl
import subprocess
def youtube_to_mp3(url):
ydl_opts = {
'format': 'bestaudio/best',
'postprocessors': [{
'key': 'FFmpegExtractAudio',
'preferredcodec': 'mp3',
'preferredquality': '192',
}],
}
with youtube_dl.YoutubeDL(ydl_opts) as ydl:
info = ydl.extract_info(url, download=False)
video_title = info.get('title', None)
ydl.download([url])
# Rename the downloaded file to a more user-friendly name
output_file = f"{video_title}.mp3"
subprocess.run(['mv', 'output.mp3', output_file])
# Usage
youtube_to_mp3('https://www.youtube.com/watch?v=VIDEO_ID')
Метод 2: использование youtube-dl и FFmpeg (командная строка)
youtube-dl --extract-audio --audio-format mp3 --audio-quality 192K --output "%(title)s.%(ext)s" "https://www.youtube.com/watch?v=VIDEO_ID"
Метод 3. Использование pytube (Python)
from pytube import YouTube
def youtube_to_mp3(url):
yt = YouTube(url)
video = yt.streams.filter(only_audio=True).first()
output_file = video.download()
base, ext = os.path.splitext(output_file)
new_file = base + '.mp3'
os.rename(output_file, new_file)
# Usage
youtube_to_mp3('https://www.youtube.com/watch?v=VIDEO_ID')
Метод 4. Использование API ytmp3.cc (Python)
import requests
def youtube_to_mp3(url):
response = requests.get(f'https://www.ytmp3.cc/api/#https://www.youtube.com/watch?v=VIDEO_ID')
download_link = response.json()['result']
mp3_file = requests.get(download_link)
with open('output.mp3', 'wb') as file:
file.write(mp3_file.content)
# Usage
youtube_to_mp3('https://www.youtube.com/watch?v=VIDEO_ID')