hamza2923 commited on
Commit
d465712
·
verified ·
1 Parent(s): 21666c0

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +16 -6
app.py CHANGED
@@ -1,15 +1,25 @@
1
  import gradio as gr
2
  from pytube import YouTube
 
3
 
4
  def get_youtube_transcript(video_url):
5
  try:
6
- yt = YouTube(video_url)
7
- caption = yt.captions.get_by_language_code('en') # You can adjust the language code
8
- if caption:
9
- transcript = caption.generate_srt_captions() # Or .generate_vtt_captions() for VTT format
10
- return transcript
 
 
 
 
 
 
 
 
 
11
  else:
12
- return "No English transcript found for this video."
13
  except Exception as e:
14
  return f"An error occurred: {e}"
15
 
 
1
  import gradio as gr
2
  from pytube import YouTube
3
+ from urllib.parse import urlparse, parse_qs
4
 
5
  def get_youtube_transcript(video_url):
6
  try:
7
+ parsed_url = urlparse(video_url)
8
+ if parsed_url.netloc == "www.youtube.com" and parsed_url.path == "/watch":
9
+ query_params = parse_qs(parsed_url.query)
10
+ if "v" in query_params:
11
+ video_id = query_params["v"][0]
12
+ yt = YouTube(f"https://www.youtube.com/watch?v={video_id}")
13
+ caption = yt.captions.get_by_language_code('en')
14
+ if caption:
15
+ transcript = caption.generate_srt_captions()
16
+ return transcript
17
+ else:
18
+ return "No English transcript found for this video."
19
+ else:
20
+ return "Invalid YouTube video URL."
21
  else:
22
+ return "Invalid YouTube video URL."
23
  except Exception as e:
24
  return f"An error occurred: {e}"
25