Как стать автором
Обновить

Продолжаем переезд на Bing Translate API

Итак, продолжаем переезд на Bing Translate API. Раньше нам уже был предложен вариант на JavaScript, сейчас мы сделаем тоже самое, но средствами Python'а.
Нам потребуется:
  • API key, чтобы его получить идем сюда
  • Python 3 и выше
  • 5 минут свободного времени

Поехали

#!/usr/bin/python
# -*- coding: utf-8 -*-
 
import json
from urllib import parse, request
 
_api_key = 'your_key'
 
def translate(texttotr, sl, tl):
    """ Function for translating using Bing's Translator API
    texttotr - text to be translated
    sl - source language code (f.e. 'ru')
    tl - target language code (f.e. 'ru') """

    query = parse.urlencode({
        'AppId' : _api_key,
        'Query': texttotr,
        'Sources''Translation',
        'Version''2.2',
        'Translation.SourceLanguage': sl,
        'Translation.TargetLanguage': tl,
        'JsonType':'callback'
        })
    url = 'http://api.bing.net/json.aspx?%s' % query
    search_response = request.urlopen(url)
    search_results = search_response.read().decode()
    results = json.loads(search_results)
    results = results['SearchResponse']['Translation']['Results']
    print('%s -> %s' % (texttotr, results[0]['TranslatedTerm']))
 
 
if __name__ == '__main__':
    translate('привет мир''ru''en')

Вот и все, несколько строчек кода и у нас имеется отличная замена сервису от Google. Если у вас имеются идеи по улучшению скрипта прошу в комментарии.
Теги:
Хабы:
Данная статья не подлежит комментированию, поскольку её автор ещё не является полноправным участником сообщества. Вы сможете связаться с автором только после того, как он получит приглашение от кого-либо из участников сообщества. До этого момента его username будет скрыт псевдонимом.