File size: 1,027 Bytes
5fff340
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
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)}"