https://github.com/jdepoix/youtube-transcript-api
!uv pip install youtube-transcript-api
from youtube_transcript_api import YouTubeTranscriptApi
ytt_api = YouTubeTranscriptApi()
video_id = "atmGAHYpf_c"
transcript_obj = ytt_api.fetch(video_id, languages=("en", "en-US"))
is_generated = transcript_obj.is_generated
transcript_data = transcript_obj.to_raw_data()
transcript = " ".join([t["text"] for t in transcript_data])