nayyabzahra148 commited on
Commit
17e22ac
·
verified ·
1 Parent(s): 1b79d63

Update Translator.py

Browse files
Files changed (1) hide show
  1. Translator.py +13 -12
Translator.py CHANGED
@@ -14,27 +14,28 @@ def extract_video_id(url):
14
 
15
  def get_subtitles(video_url):
16
  """
17
- Gets the English subtitles using youtube-transcript-api
 
18
  """
19
  video_id = extract_video_id(video_url)
20
  if not video_id:
21
  raise ValueError("Invalid YouTube URL")
22
 
23
  try:
24
- transcript_list = YouTubeTranscriptApi.list_transcripts(video_id)
 
 
 
 
25
 
26
- # Try manually created English transcript first
27
  try:
28
- transcript = transcript_list.find_manually_created_transcript(['en'])
29
- except:
30
- # fallback to auto-generated English transcript
31
- transcript = transcript_list.find_generated_transcript(['en'])
32
-
33
- return transcript.fetch()
34
 
35
- except Exception as e:
36
- print("🚫 Error getting transcript:", e)
37
- raise RuntimeError("Subtitles not available.")
38
 
39
 
40
  def format_transcript(transcript):
 
14
 
15
  def get_subtitles(video_url):
16
  """
17
+ Gets English subtitles using youtube-transcript-api.
18
+ Tries manual subtitles first, then auto-generated.
19
  """
20
  video_id = extract_video_id(video_url)
21
  if not video_id:
22
  raise ValueError("Invalid YouTube URL")
23
 
24
  try:
25
+ # Try manually added subtitles in English
26
+ subtitles = YouTubeTranscriptApi.get_transcript(video_id, languages=['en'])
27
+ return subtitles
28
+ except Exception as e:
29
+ print("🚫 Error getting manual transcript:", e)
30
 
 
31
  try:
32
+ # Try auto-generated English subtitles
33
+ subtitles = YouTubeTranscriptApi.get_transcript(video_id, languages=['en'])
34
+ return subtitles
35
+ except Exception as fallback_error:
36
+ print("❌ Fallback also failed:", fallback_error)
37
+ raise RuntimeError("Subtitles not available.")
38
 
 
 
 
39
 
40
 
41
  def format_transcript(transcript):