Created
December 24, 2020 01:55
-
-
Save larsenv/75de3332fbd8dacecea14fe46f40c11e to your computer and use it in GitHub Desktop.
Bad Translator, because I couldn't find my own
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import os | |
import random | |
import sys | |
from googletrans import Translator # pip install googletrans==4.0.0-rc1 --upgrade-strategy only-if-needed | |
print("Bad Translator by Larsen Vallecillo") | |
print("\n") | |
if os.path.exists("translated.txt"): | |
text = open("translated.txt", "r").read() | |
else: | |
print("Please put what you want to translate in translate.txt.") | |
exit() | |
try: | |
times = int(input("How many times do you want to translate? ")) | |
except ValueError: | |
print("That's not a number.") | |
if times > 100: | |
print("Are you sure you want to translate that many times?") | |
print("OK...") | |
languages = { | |
'af': 'afrikaans', | |
'sq': 'albanian', | |
'am': 'amharic', | |
'ar': 'arabic', | |
'hy': 'armenian', | |
'az': 'azerbaijani', | |
'eu': 'basque', | |
'be': 'belarusian', | |
'bn': 'bengali', | |
'bs': 'bosnian', | |
'bg': 'bulgarian', | |
'ca': 'catalan', | |
'ceb': 'cebuano', | |
'ny': 'chichewa', | |
'zh-cn': 'chinese (simplified)', | |
'zh-tw': 'chinese (traditional)', | |
'co': 'corsican', | |
'hr': 'croatian', | |
'cs': 'czech', | |
'da': 'danish', | |
'nl': 'dutch', | |
'en': 'english', | |
'eo': 'esperanto', | |
'et': 'estonian', | |
'tl': 'filipino', | |
'fi': 'finnish', | |
'fr': 'french', | |
'fy': 'frisian', | |
'gl': 'galician', | |
'ka': 'georgian', | |
'de': 'german', | |
'el': 'greek', | |
'gu': 'gujarati', | |
'ht': 'haitian creole', | |
'ha': 'hausa', | |
'haw': 'hawaiian', | |
'iw': 'hebrew', | |
'hi': 'hindi', | |
'hmn': 'hmong', | |
'hu': 'hungarian', | |
'is': 'icelandic', | |
'ig': 'igbo', | |
'id': 'indonesian', | |
'ga': 'irish', | |
'it': 'italian', | |
'ja': 'japanese', | |
'jw': 'javanese', | |
'kn': 'kannada', | |
'kk': 'kazakh', | |
'km': 'khmer', | |
'ko': 'korean', | |
'ku': 'kurdish (kurmanji)', | |
'ky': 'kyrgyz', | |
'lo': 'lao', | |
'la': 'latin', | |
'lv': 'latvian', | |
'lt': 'lithuanian', | |
'lb': 'luxembourgish', | |
'mk': 'macedonian', | |
'mg': 'malagasy', | |
'ms': 'malay', | |
'ml': 'malayalam', | |
'mt': 'maltese', | |
'mi': 'maori', | |
'mr': 'marathi', | |
'mn': 'mongolian', | |
'my': 'myanmar (burmese)', | |
'ne': 'nepali', | |
'no': 'norwegian', | |
'ps': 'pashto', | |
'fa': 'persian', | |
'pl': 'polish', | |
'pt': 'portuguese', | |
'pa': 'punjabi', | |
'ro': 'romanian', | |
'ru': 'russian', | |
'sm': 'samoan', | |
'gd': 'scots gaelic', | |
'sr': 'serbian', | |
'st': 'sesotho', | |
'sn': 'shona', | |
'sd': 'sindhi', | |
'si': 'sinhala', | |
'sk': 'slovak', | |
'sl': 'slovenian', | |
'so': 'somali', | |
'es': 'spanish', | |
'su': 'sundanese', | |
'sw': 'swahili', | |
'sv': 'swedish', | |
'tg': 'tajik', | |
'ta': 'tamil', | |
'te': 'telugu', | |
'th': 'thai', | |
'tr': 'turkish', | |
'uk': 'ukrainian', | |
'ur': 'urdu', | |
'uz': 'uzbek', | |
'vi': 'vietnamese', | |
'cy': 'welsh', | |
'xh': 'xhosa', | |
'yi': 'yiddish', | |
'yo': 'yoruba', | |
'zu': 'zulu', | |
'fil': 'Filipino', | |
# 'he': 'Hebrew' | |
} | |
i = 0 | |
translator = Translator() | |
translated = text | |
last = "en" | |
for t in range(0, times): | |
language = random.choice(list(languages.keys())) | |
print("#{} - Translating to {}".format(str(t), languages[language])) | |
translated = translator.translate(translated, src=last, dest=language).text | |
print(translated) | |
last = language | |
i += 1 | |
translated = translator.translate(translated, src=last, dest="en").text | |
print("The result is:\n") | |
print(translated) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment