Darsh1234Tayal commited on
Commit
e48e160
·
verified ·
1 Parent(s): a6e8a34

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +18 -8
app.py CHANGED
@@ -32,15 +32,25 @@ def video_id_extractor(link):
32
  return None
33
 
34
  def generate_transcript(video_id):
35
- trans = YouTubeTranscriptApi()
 
 
 
36
  try:
37
- transcript_raw = trans.fetch(video_id = video_id)
38
- except Exception:
39
- return None
40
- transcript = ""
41
- for i in transcript_raw.snippets:
42
- transcript += f" {i.text}"
43
- return transcript
 
 
 
 
 
 
 
44
 
45
  def create_and_save_vs(trans):
46
  try:
 
32
  return None
33
 
34
  def generate_transcript(video_id):
35
+ from youtube_transcript_api import YouTubeTranscriptApi, _errors
36
+ import traceback
37
+
38
+ print(f"[INFO] Fetching transcript for video ID: {video_id}")
39
  try:
40
+ transcript_raw = YouTubeTranscriptApi.get_transcript(video_id, languages=['en'])
41
+ transcript = " ".join([i['text'] for i in transcript_raw])
42
+ print(f"[INFO] Transcript fetched. Length: {len(transcript)} chars")
43
+ return transcript
44
+ except _errors.TranscriptsDisabled:
45
+ print(f"[ERROR] Transcripts are disabled for video {video_id}")
46
+ except _errors.VideoUnavailable:
47
+ print(f"[ERROR] Video unavailable or restricted: {video_id}")
48
+ except _errors.NoTranscriptFound:
49
+ print(f"[ERROR] No transcript found (no captions in English) for {video_id}")
50
+ except Exception as e:
51
+ print(f"[ERROR] Unexpected exception fetching transcript: {e}")
52
+ traceback.print_exc()
53
+ return None
54
 
55
  def create_and_save_vs(trans):
56
  try: