Snigdhapaul2003's picture
Update app.py
4761058 verified
raw
history blame
1.59 kB
import gradio as gr
import googletrans
from googletrans import Translator
european_languages = {
'afrikaans': 'af',
'albanian': 'sq',
'armenian': 'hy',
'azerbaijani': 'az',
'basque': 'eu',
'belarusian': 'be',
'bosnian': 'bs',
'bulgarian': 'bg',
'catalan': 'ca',
'croatian': 'hr',
'czech': 'cs',
'danish': 'da',
'dutch': 'nl',
'english': 'en',
'estonian': 'et',
'finnish': 'fi',
'french': 'fr',
'georgian': 'ka',
'german': 'de',
'greek': 'el',
'hungarian': 'hu',
'icelandic': 'is',
'irish': 'ga',
'italian': 'it',
'latvian': 'lv',
'lithuanian': 'lt',
'luxembourgish': 'lb',
'macedonian': 'mk',
'maltese': 'mt',
'norwegian': 'no',
'polish': 'pl',
'portuguese': 'pt',
'romanian': 'ro',
'russian': 'ru',
'scots gaelic': 'gd',
'serbian': 'sr',
'slovak': 'sk',
'slovenian': 'sl',
'spanish': 'es',
'swedish': 'sv',
'ukrainian': 'uk',
'welsh': 'cy',
}
translator = Translator()
def translate_article(article, language):
lang = translator.detect(article).lang
lang_code = european_languages[language]
translated_text = translator.translate(text, src=lang, dest= lang_code)
return translated_text.text
language_choices = list(european_languages.keys())
iface = gr.Interface(
fn=translate_article,
inputs=["text",gr.Dropdown(
language_choices, value="english", multiselect=False, label="Choose the language.")],
outputs="text",
title="Translation Tool"
)
iface.launch(debug=True)