product2204's picture
Update app.py
520a66e verified
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()