با پایتون ویدیوی یوتیوب را به پادکست تبدیل کنید
پادکست ها به یک رسانه محبوب برای مصرف محتوا تبدیل شده اند، اما گاهی اوقات مطالبی که می خواهید به آن گوش دهید به صورت ویدیویی در یوتیوب است. تبدیل این ویدیوها به پادکست به شما این امکان را می دهد که در حال حرکت از آنها لذت ببرید. در این پست وبلاگ، من شما را از طریق یک اسکریپت ساده پایتون راهنمایی می کنم که یک ویدیوی YouTube را دانلود می کند، صدا را استخراج می کند و آن را در پخش کننده رسانه پیش فرض شما پخش می کند.
پیش نیازها
قبل از شروع، باید چند کتابخانه پایتون نصب کنید. ترمینال خود را باز کنید و اجرا کنید:
pip install pytube moviepy
کتابخانه pytube برای دانلود ویدیوهای YouTube استفاده می شود و moviepy در تبدیل فایل های ویدیویی به صدا کمک می کند.
اسکریپت
در اینجا اسکریپت کامل پایتون برای تبدیل یک ویدیوی YouTube به پادکست MP3 و پخش خودکار آن آمده است:
from pytube import YouTube
from moviepy.editor import VideoFileClip
import os
import subprocess
import sys
def download_youtube_video(url, output_path="videos"):
# Create output directory if it doesn't exist
if not os.path.exists(output_path):
os.makedirs(output_path)
yt = YouTube(url)
video = yt.streams.filter(progressive=True, file_extension='mp4').first()
output_file = video.download(output_path)
return output_file
def convert_video_to_audio(video_path, output_path="audios"):
if not os.path.exists(output_path):
os.makedirs(output_path)
video = VideoFileClip(video_path)
audio_path = os.path.join(output_path, os.path.splitext(os.path.basename(video_path))[0] + ".mp3")
video.audio.write_audiofile(audio_path)
return audio_path
def play_audio(audio_path):
if sys.platform == "win32":
os.startfile(audio_path)
elif sys.platform == "darwin":
subprocess.call(["open", audio_path])
else:
subprocess.call(["xdg-open", audio_path])
def main():
youtube_url = input("Enter YouTube video URL: ")
print("Downloading video...")
video_path = download_youtube_video(youtube_url)
print(f"Video downloaded to {video_path}")
print("Converting video to audio...")
audio_path = convert_video_to_audio(video_path)
print(f"Audio saved to {audio_path}")
print("Playing audio...")
play_audio(audio_path)
if __name__ == "__main__":
main()
چگونه کار می کند
- دانلود ویدیوی یوتیوب:
• download_youtube_video
تابع URL یوتیوب را می گیرد و ویدیو را دانلود می کند. ما جریانها را فیلتر میکنیم تا یک جریان پیشرونده (که شامل ویدیو و صدا میشود) با پسوند MP4 دریافت کنیم.
- تبدیل ویدیو به صدا:
• convert_video_to_audio
تابع از moviepy برای تبدیل فایل ویدیویی دانلود شده به فایل صوتی MP3 استفاده می کند.
- پخش صدا:
• عملکرد play_audio از دستورات مخصوص پلتفرم برای پخش فایل MP3 با استفاده از پخش کننده رسانه پیش فرض در Windows، macOS یا Linux استفاده می کند.
- عملکرد اصلی:
• عملکرد اصلی از شما می خواهد که URL YouTube را وارد کنید، ویدیو را دانلود کرده، آن را به صدا تبدیل می کند و سپس فایل صوتی را پخش می کند.
نتیجه
این اسکریپت یک راه ساده برای تبدیل ویدیوهای یوتیوب به فایل های صوتی که می تواند به عنوان پادکست استفاده شود را ارائه می دهد. چه بخواهید به سخنرانی ها، مصاحبه ها یا هر محتوای دیگری که در یوتیوب موجود است گوش دهید، این روش به شما امکان می دهد آنها را در قالب صوتی قابل حمل تری تبدیل کنید و لذت ببرید. گوش دادن مبارک!