Sunday01's picture
up
9dce458
raw
history blame contribute delete
997 Bytes
import deepl
from .common import CommonTranslator, MissingAPIKeyException
from .keys import DEEPL_AUTH_KEY
class DeeplTranslator(CommonTranslator):
_LANGUAGE_CODE_MAP = {
'CHS': 'ZH',
'CHT': 'ZH',
'JPN': 'JA',
'ENG': 'EN-US',
'CSY': 'CS',
'NLD': 'NL',
'FRA': 'FR',
'DEU': 'DE',
'HUN': 'HU',
'ITA': 'IT',
'PLK': 'PL',
'PTB': 'PT-BR',
'ROM': 'RO',
'RUS': 'RU',
'ESP': 'ES',
'IND': 'ID'
}
def __init__(self):
super().__init__()
if not DEEPL_AUTH_KEY:
raise MissingAPIKeyException('Please set the DEEPL_AUTH_KEY environment variable before using the deepl translator.')
self.translator = deepl.Translator(DEEPL_AUTH_KEY)
async def _translate(self, from_lang, to_lang, queries):
return self.translator.translate_text('\n'.join(queries), target_lang = to_lang).text.split('\n')