-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtranslator_logic.py
More file actions
81 lines (71 loc) · 1.88 KB
/
Copy pathtranslator_logic.py
File metadata and controls
81 lines (71 loc) · 1.88 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
from deep_translator import GoogleTranslator
languages = {
# Western Europe
"English": "en",
"French": "fr",
"German": "de",
"Spanish": "es",
"Italian": "it",
"Portuguese": "pt",
# Eastern & Central Europe
"Romanian": "ro",
"Polish": "pl",
"Czech": "cs",
"Slovak": "sk",
"Hungarian": "hu",
"Bulgarian": "bg",
"Croatian": "hr",
"Slovenian": "sl",
"Lithuanian": "lt",
"Latvian": "lv",
"Estonian": "et",
"Russian": "ru",
"Ukrainian": "uk",
"Serbian": "sr",
"Belarusian": "be",
# Northern Europe
"Swedish": "sv",
"Norwegian": "no",
"Danish": "da",
"Finnish": "fi",
"Icelandic": "is",
"Irish": "ga",
# Southern Europe
"Greek": "el",
"Macedonian": "mk",
"Albanian": "sq",
"Bosnian": "bs",
"Montenegrin": "me",
"Catalan": "ca",
"Basque": "eu",
"Galician": "gl",
"Maltese": "mt",
# --- Asia ---
"Turkish": "tr",
"Chinese": "zh-CN",
"Japanese": "ja",
"Korean": "ko",
"Hindi": "hi",
"Bengali": "bn",
"Punjabi": "pa",
"Tamil": "ta",
"Telugu": "te",
"Thai": "th",
"Vietnamese": "vi",
"Indonesian": "id",
"Arabic": "ar",
# --- Africa ---
"Swahili": "sw",
"Amharic": "am",
"Zulu": "zu",
}
class Translator:
def __init__(self, source_language, target_language):
self.source_language = source_language
self.target_language = target_language
def translate_text(self, input_text):
if self.source_language not in languages.keys() or self.target_language not in languages.keys():
raise ValueError("Unsupported language")
translated_text = GoogleTranslator(source=languages[self.source_language],
target=languages[self.target_language]).translate(input_text)
return translated_text