def translate_text()

in scripts/translate.py [0:0]


def translate_text(text_to_translate, languages):
    if args.verbose:
        print('DEBUG: translating text "{0}" on {1}...'.format(text_to_translate, translator_url))
    # If a single languages specified, convert to array
    if not type(languages) == list:
        languages = [languages]
    # Azure Translator parameters
    translator_params = {
        'api-version': '3.0',
        'from': 'en',
        'to': languages
    }
    translator_headers = {
        'Ocp-Apim-Subscription-Key': translator_key,
        'Ocp-Apim-Subscription-Region': translator_region,
        'Content-type': 'application/json',
        'Accept': 'application/json',
        'X-ClientTraceId': str(uuid.uuid4())
    }
    translator_body = [{
        'text': text_to_translate
    }]
    if args.verbose:
        print ("DEBUG: sending body", str(translator_body))
        print ("DEBUG: sending HTTP headers", str(translator_headers))
        print ("DEBUG: sending parameters", str(translator_params))
    try:
        request = requests.post(translator_url, params=translator_params, headers=translator_headers, json=translator_body)
        response = request.json()
        if args.verbose:
            print("DEBUG: translator response:")
            print(json.dumps(response, sort_keys=True, ensure_ascii=False, indent=4, separators=(',', ': ')))
        return str(response[0]['translations'][0]['text'])
    except Exception as e:
        print("ERROR: Error in translation:", str(e))