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()