#se citeste fisierul dat ca argument 
import sys

f=open(sys.argv[1])
#se cauta id-ul de youtub in linkurile din variabila f
for line in f:
    if "youtu.be" in line:
        print(line.split("youtu.be/")[1].split("\n")[0])
    elif "youtube.com" in line:
        print(line.split("youtube.com/watch?v=")[1].split("\n")[0])
    else:
        continue
f.close()
#se scriu id-urile gasite intr-un fisier nou
f=open("id-uri.txt","w")
for line in open(sys.argv[1]):
    if "youtu.be" in line:
        f.write(line.split("youtu.be/")[1].split("\n")[0]+"\n")
    elif "youtube.com" in line:
        f.write(line.split("youtube.com/watch?v=")[1].split("\n")[0]+"\n")
    else:
        continue
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
