#print(desiredSubLang,'\n') #print(originalSubLang,'\n') #print(sys.argv[1],'\n') if (sys.argv[1].endswith('.srt')): (filepath,filename) = os.path.split(sys.argv[1]) dict = Utils.ParseSRTFile(sys.argv[1]) #print(dict, '\n') translatedSubInfo = [] for key, parsedSubInfoList in dict.items(): if len(parsedSubInfoList) != 0:#make sure the srt file was correctly translated subTranslator = Translator(parsedSubInfoList, originalSubLang, desiredSubLang) print("Translating...") transTemp = subTranslator.Translate() translatedSubInfo.extend(transTemp) #print(type(translatedSubInfo)) #print(translatedSubInfo) print("Writing file to: " + filepath + "\\" + os.path.splitext(filename)[0] +"_" + desiredSubLang.upper() + os.path.splitext(filename)[-1] + "...") Utils.WriteSRTFile(filepath + "\\" + os.path.splitext(filename)[0] +"_" + desiredSubLang.upper() + os.path.splitext(filename)[-1], translatedSubInfo) print("Done!") else: #"""Batch translte SRT files in a folder""" for dirpath, dirnames, filenames in os.walk(sys.argv[1]): for filepath in filenames: translatedSubInfo = [] tempPath = os.path.join(dirpath, filepath)
## MAIN ## #make sure we have the correct number of args if len(sys.argv) == 3 or len(sys.argv) == 4: desiredSubLang = sys.argv[2] originalSubLang = sys.argv[3] if len(sys.argv) == 4 else u'auto' parsedSubInfoList = Utils.ParseSRTFile(sys.argv[1]) if len(parsedSubInfoList ) != 0: #make sure the srt file was correctly translated subTranslator = Translator(parsedSubInfoList, originalSubLang, desiredSubLang) if (subTranslator.LanguageSupported(desiredSubLang) and subTranslator.LanguageSupported(originalSubLang)): print("Translating...") translatedSubInfo = subTranslator.Translate() print("Writing file to: " + desiredSubLang.upper() + "_" + sys.argv[1] + "...") Utils.WriteSRTFile(desiredSubLang.upper() + "_" + sys.argv[1], translatedSubInfo) print("Done!") else: langs = desiredSubLang if not subTranslator.LanguageSupported( desiredSubLang) else "" langs += " " + originalSubLang if not subTranslator.LanguageSupported( originalSubLang) else "" print("ERROR: Unrecognized language(s): " + langs) print("""Supported languages:""") subTranslator.PrintSupportedLanguagesText(4) else:
from Parser import Parser from Translator import Translator import sys with open(sys.argv[1], 'r') as asmFile: parser = Parser(asmFile) translator = Translator() translator.Translate(parser.filteredAsm) translator.WriteToSource()