Код:
Функция ПреобразоватьСтрокуОтветаПереводчика (Строка, Ошибка=Ложь, КодОшибки=0, СтрокаОшибки = "") Экспорт
ТекСтрока = Строка;
ТекСтрока = СтрЗаменить (ТекСтрока, "{""responseData"": {","");
ТекСтрока = Лев (ТекСтрока, СтрДлина (ТекСтрока)-1);
ТекСтроки = СтрЗаменить (ТекСтрока, ",", Символы.ПС);
ТекПеревод = СтрПолучитьСтроку (ТекСтроки, 1);
ТекПеревод = СтрЗаменить (ТекПеревод, """translatedText"":""", "");
ТекПеревод = Лев (ТекПеревод, СтрДлина (ТекПеревод)-2);
Возврат ТекПеревод;
КонецФункции
Функция ТекстДляУРЛ (Текст) Экспорт
хВСХ = Новый COMОбъект ("MSScriptControl.ScriptControl");
хВСХ.language = "javascript";
Результат = хВСХ.Eval("escape('"+Текст+"')");
Возврат Результат;
КонецФункции
Функция ПеревестиТекст (ИсходныйТекст, ЯзыкИсходный, ЯзыкПеревода, Ошибка = Ложь, КодОшибки = 0, ТекстОшибки = "") Экспорт
Если Не ЗначениеЗаполнено (ИсходныйТекст) Тогда
Возврат "";
КонецЕсли;
Результат = "";
УРЛСайта = "ajax.googleapis.com";
// УРЛ = "https://ajax.googleapis.com/ajax/services/language/translate?v=1.0&q=<%СЛОВО%>&langpair=<%ЯЗЫКИСТОЧНИК%>|<%ЯЗЫКПЕРЕВОДА%>";
УРЛ = "/ajax/services/language/translate?v=1.0&q=<%СЛОВО%>&langpair=<%ЯЗЫКИСТОЧНИК%>|<%ЯЗЫКПЕРЕВОДА%>";
ТекИсходныйТекст = ТекстДляУРЛ (ИсходныйТекст);
УРЛ = СтрЗаменить (УРЛ, "<%СЛОВО%>", ТекИсходныйТекст);
УРЛ = СтрЗаменить (УРЛ, "<%ЯЗЫКИСТОЧНИК%>", ЯзыкИсходный);
УРЛ = СтрЗаменить (УРЛ, "<%ЯЗЫКПЕРЕВОДА%>", ЯзыкПеревода);
Коннект = Новый HTTPСоединение(УРЛСайта);
ЧтениеТекста = Новый ТекстовыйДокумент;
СтруктураПараметров = Новый Структура;
ИмяВременногоФайла=ПолучитьИмяВременногоФайла("txt");
ФлагОшибкиВеб = Ложь;
КоличествоПопыток = 3;
СчПопыток = 1;
Пока Истина Цикл
Попытка
Коннект.Получить(УРЛ,ИмяВременногоФайла);
Прервать;
Исключение
Если СчПопыток >= КоличествоПопыток Тогда
ФлагОшибкиВеб = Истина;
Прервать;
Иначе
СчПопыток = СчПопыток + 1;
КонецЕсли;
КонецПопытки;
КонецЦикла;
Если Не ФлагОшибкиВеб Тогда
ЧтениеТекста.Прочитать(ИмяВременногоФайла, КодировкаТекста.UTF8);
СтрокаОтвета = ЧтениеТекста.ПолучитьТекст();
ТекстПеревод = ПреобразоватьСтрокуОтветаПереводчика (СтрокаОтвета);
Результат = ТекстПеревод;
Иначе
Ошибка = Истина;
КодОшибки = 1;
ТекстОшибки = "Время ожидания ответа истекло";
КонецЕсли;
Возврат Результат;
КонецФункции
// вызов
Сообщить (ПеревестиТекст ("слово", "ru", "en"));