#se citeste fisierul dat ca argument 
import sys

f=open("id-uri.txt","w")

for line in open(sys.argv[1]):
    try:
        if "youtu.be" in line:
            yt_url = line.split("youtu.be/")[1].split("\n")[0]
            print(yt_url)
            f.write(yt_url+"\n")
        elif "youtube.com" in line:
            yt_url = line.split("youtube.com/watch?v=")[1].split("\n")[0]
            print(yt_url)
            f.write(yt_url+"\n")
        else:
            continue
    except Exception as exception:
        pass
f.close()

from youtube_transcript_api import YouTubeTranscriptApi

def generate_transcript(id):
	transcript = YouTubeTranscriptApi.get_transcript(id)
	script = ""

	for text in transcript:
		t = text["text"]
		if t != '[Music]':
			script += t + " "
		
	return script, len(script.split())
#in file-ul id-uri.txt se afla id-urile video-urilor din care se genereaza transcriptii
#in file-ul de output se afla transcriptii generate
try:
    f = open("id-uri.txt")
    g = open("transcripts.txt", "w")
    for line in f:
            id = line.split("\n")[0]
            script, words = generate_transcript(id)
            g.write(script + "\n")
            print(script)
            print(words)
    f.close()
    g.close()
except:
    pass
