smart-lms-suite / utils /translator.py
sathwikabhavaraju2005's picture
Create translator.py
5fff340 verified
import requests
def translate_text(text, target_lang="te"):
"""
Translates the given English text into the target language using LibreTranslate.
Parameters:
text (str): The English input text.
target_lang (str): The ISO code of the target language (e.g., 'te', 'hi', 'ta', 'bn').
Returns:
str: The translated text or error message.
"""
try:
url = "https://libretranslate.de/translate" # Free public instance
payload = {
"q": text,
"source": "en",
"target": target_lang,
"format": "text"
}
headers = {"Content-Type": "application/x-www-form-urlencoded"}
response = requests.post(url, data=payload, headers=headers)
if response.status_code == 200:
return response.json()["translatedText"]
else:
return f"Translation failed: {response.status_code} {response.text}"
except Exception as e:
return f"Error during translation: {str(e)}"