Em nossa vida diária e no trabalho, muitas vezes precisamos usar ferramentas de tradução. Entre muitas ferramentas de tradução, eu pessoalmente prefiro o Google Translate, então aqui estão três maneiras de chamar a interface do Google Translate através do Python.

Método 1

solicitações de importação
def traduzir_1(texto, src_lang='auto', to_lang='en'):
googleapis_url = 'https://translate.googleapis.com/translate_a/single'
url = '%s?client=gtx&sl=%s&tl=%s&dt=t&q=%s' % (googleapis_url,src_lang,to_lang,texto)
dados = solicitações.get(url).json()
res = ''.join([s[0] para s em dados[0]])
Retornar res



Método 2

# pip instalar bs4
solicitações de importação
da importação bs4 BeautifulSoup
def traduzir_2(texto, src_lang='auto', to_lang='en'):
url = 'https://translate.google.cn/m?q=%s&tl=%s&sl=%s' % (texto,to_lang,src_lang)
sopa = BeautifulSoup(requests.get(url).text,'lxml')
res = sopa.find('div',{'class':'result-container'}).texto
Retornar res


Método 3

# pip instalar googletrans==4.0.0-rc1
do tradutor de importação do googletrans
def traduzir_3(texto, src_lang='auto', to_lang='en'):
Tradutor = Tradutor(service_urls=['translate.google.cn'])
res = tradutor.translate(texto, destino=to_lang, src=src_lang).texto
Retornar res


Executando exibição de resultados


Obtenha todos os idiomas e suas codificações correspondentes

solicitações de importação
da importação bs4 BeautifulSoup
def get_all_langcode():
Resposta = requests.get(url='https://translate.google.cn')
sopa = BeautifulSoup(response.text,'lxml')
res_dict = {}
para res em sopa.find_all('div',{'class':'qSb8Pe'}):
res_dict[res['código de idioma de dados']] = res.find('div',{'class':'Llmcnf'}).text
Retornar res_dict
{
'auto': 'Detectar idioma',
'quadrado': 'Albanês',
'ar': 'Árabe',
'sou': 'amárico',
'como': 'Assamês',
'az': 'Azerbaijano',
'ee': 'Ewe',
'ay': 'Aymara',
'ga': 'Irlandês',
'et': 'Estónio',
'ou': 'Oriya',
'om': 'Oromo',
'eu': 'basco',
'ser': 'bielorrusso',
'bm': 'Bambará',
'bg': 'búlgaro',
'é': 'islandês',
'pl': 'Polonês',
'bs': 'Bósnio',
'fa': 'Persa',
'bho': 'Bhojpuri',
'af': 'Booleano (Africâner)',
'tt': 'Tártaro',
'da': 'dinamarquês',
'de': 'Alemão',
'dv': 'Dhivehi',
'ti': 'Tigniano',
'doi': 'Cão Laiyu',
'ru': 'Russo',
'fr': 'Francês',
'sa': 'Sânscrito',
'tl': 'Filipino',
'fi': 'Finlandês',
'fy': 'Frísio',
'km': 'Khmer',
'ka': 'georgiano',
'gom': 'linguagem Gonggen',
'gu': 'Guzerate',
'gn': 'Guarani',
'kk': 'Cazaque',
'ht': 'crioulo haitiano',
'ko': 'Coreano',
'ha': 'Hausa',
'nl': 'holandês',
'ky': 'Quirguistão',
'gl': 'Galego',
'ca': 'catalão',
'cs': 'Tcheco',
'kn': 'Kannada',
'co': 'Córsega',
'kri': 'crioulo',
'hr': 'croata',
'qu': 'quíchua',
'ku': 'Curdo (Kurmanji)',
'ckb': 'Curdo (Sorani)',
'la': 'latim',
'lv': 'letão',
'lo': 'Lao',
'lt': 'Lituano',
'Ln': 'Lingala',
'lg': 'Luganda',
'lb': 'luxemburguês',
'rw': 'Rywanda',
'ro': 'Romeno',
'mg': 'Malgasiano',
'mt': 'maltês',
'senhor': 'Marathi',
'ml': 'Malaiala',
'ms': 'Malaio',
'mk': 'macedônio',
'mai': 'Maitili',
'mi': 'Maori',
'mni-Mtei': 'Mtei (Manipur)',
'mn': 'Mongol',
'bn': 'bengali',
'lus': 'Mizo',
'meu': 'birmanês',
'hmm': 'Miao',
'xh': 'Xhosa sul-africano',
'zu': 'zulu sul-africano',
'ne': 'Nepalês',
'não': 'Norueguês',
'pa': 'Punjabi',
'pt': 'Português',
'ps': 'pasto',
'ny': 'Chichewa',
'ak': 'Twi',
'ja': 'japonês',
'sv': 'sueco',
'sm': 'Samoano',
'sr': 'sérvio',
'nso': 'Sepeti',
'st': 'Sesoto',
'si': 'Sinhala',
'eo': 'Esperanto',
'sk': 'Eslovaco',
'sl': 'esloveno',
'sw': 'suaíli',
'gd': 'gaélico escocês',
'ceb': 'Cebuano',
'então': 'somali',
'tg': 'Tadjique',
'te': 'Télugo',
'ta': 'Tâmil',
'th': 'Tailandês',
'tr': 'Turco',
'tk': 'turcomano',
'cy': 'Galês',
'ug': 'Uigur',
'ur': 'Urdu',
'Reino Unido': 'Ucraniano',
'uz': 'uzbeque',
'es': 'Espanhol',
'iw': 'hebraico',
'el': 'Grego',
'haw': 'havaiano',
'sd': 'Sindi',
'hu': 'húngaro',
'sn': 'língua Shuna',
'hy': 'armênio',
'ig': 'Ibo',
'ilo': 'Ilocano',
'isso': 'italiano',
'yi': 'iídiche',
'oi': 'hindi',
'su': 'Sudanês indonésio',
'id': 'indonésio',
'jw': 'javanês',
'pt': 'Inglês',
'yo': 'iorubá',
'vi': 'vietnamita',
'zh-TW': 'Chinês (tradicional)',
'zh-CN': 'Chinês (simplificado)',
'ts': 'Zonga'
}