File size: 1,308 Bytes
1bcd797
 
fe6bb02
6f37fff
1bcd797
974a2b2
1bcd797
 
 
 
 
 
 
 
 
 
 
 
 
 
 
520a66e
1bcd797
 
 
fe6bb02
520a66e
1bcd797
 
 
 
 
 
 
 
 
974a2b2
1bcd797
520a66e
 
 
 
1bcd797
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
from transformers import pipeline
from youtube_transcript_api import YouTubeTranscriptApi
#from IPython.display import YouTubeVideo
import streamlit as st 

def summarize(result):
    summarizer = pipeline('summarization')
    num_iters = int(len(result)/1000)
    summarized_text = []
    for i in range(0, num_iters + 1):
      start = 0
      start = i * 1000
      end = (i + 1) * 1000
      print("input text \n" + result[start:end])
      out = summarizer(result[start:end])
      out = out[0]
      out = out['summary_text']
      print("Summarized text\n"+out)
      summarized_text.append(out)
    st.write(summarized_text)

def get_transcript(video_id,language):
    #youtube_video = "https://www.youtube.com/watch?v=A4OmtyaBHFE"
    #video_id = youtube_video.split("=")[1]
    #video_id
    #st.write(YouTubeVideo(video_id))
    transcript = YouTubeTranscriptApi.get_transcript(video_id,languages=[language], preserve_formatting=True)
    print(transcript[0:5])
    
    result = ""
    for i in transcript:
        result += ' ' + i['text']
    #print(result)
    print(len(result))
    st.write(result) 

def main():
    video_id=st.text_input("enter video id ") 
    language=st.text_input("Language", value="en") 

    if video_id and language:
        get_transcript(video_id,language)
main()