forked from hastagAB/Awesome-Python-Scripts
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathTranslate.py
More file actions
35 lines (28 loc) · 1.14 KB
/
Translate.py
File metadata and controls
35 lines (28 loc) · 1.14 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
#!/usr/bin/env python3
import argparse
from googletrans import Translator
def translate(text, src_lng=None, dest_lng=None):
translator = Translator()
if src_lng and dest_lng:
translated = translator.translate(text, src=src_lng, dest=dest_lng)
elif src_lng:
translated = translator.translate(text, src=src_lng)
elif dest_lng:
translated = translator.translate(text, dest=dest_lng)
else:
translated = translator.translate(text)
return translated
parser = argparse.ArgumentParser()
parser.add_argument('text', type=str, help='text to translate')
parser.add_argument('-s', '--src', default=None, help='origin language of the text')
parser.add_argument('-d', '--dest', default=None, help='destiny language of the translation')
parser.add_argument('-v', '--verbose', help='show more information', action='store_true')
args = parser.parse_args()
tr = translate(args.text, args.src, args.dest)
if args.verbose:
print('original text: %s' % tr.origin)
print('translated text: %s' % tr.text)
print('origin language: %s' % tr.src)
print('destiny language: %s' % tr.dest)
else:
print(tr.text)