Переводчик Google для 1С 8.1

01.08.11

Интеграция - WEB-интеграция

Перевод слов и фраз на другие языки Google Переводчиком (GoogleTranslate API). Без ВК. Сейчас работает без ключа API.

 

Код:

 

Функция ПреобразоватьСтрокуОтветаПереводчика (Строка, Ошибка=Ложь, КодОшибки=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"));

См. также

Сайты и интернет-магазины WEB-интеграция Системный администратор Программист Пользователь Платформа 1С v8.3 Конфигурации 1cv8 1С:Управление торговлей 11 Автомобили, автосервисы Россия Управленческий учет Платные (руб)

Интеграционный модуль обмена между конфигурацией Альфа Авто 5 и Альфа Авто 6 и порталом AUTOCRM. Данный модуль универсален. Позволяет работать с несколькими обменами AUTOCRM разных брендов в одной информационной базе в ручном и автоматическом режиме.

36000 руб.

03.08.2020    17783    19    22    

16

Сайты и интернет-магазины Интеграция WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Управленческий учет Платные (руб)

Интеграция 1С и Битрикс 24. Разработка имеет двухстороннюю синхронизацию 1С и Bitrix24 задачами. Решение позволяет создавать пользователя в 1С из Битрикс24 и наоборот. Данная разработка технически подходит под все основные конфигурации линейки продуктов 1С:Предприятие 8.3 (платформа начиная с 8.3.23). При приобретении предоставляется 1 месяц бесплатных обновлений разработки. Доступна демо-версия продукта с подключением Вашего Битрикс24

5040 руб.

04.05.2021    19850    13    17    

16

WEB-интеграция 8.3.8 Конфигурации 1cv8 Автомобили, автосервисы Беларусь Украина Россия Казахстан Управленческий учет Платные (руб)

Расширение предназначено для конфигурации "1С:Предприятие 8. Управление Автотранспортом. ПРОФ". Функционал модуля: 1. Заполнение регистров сведений по подсистеме "Мониторинг", а именно: события по мониторингу, координаты по мониторингу, пробег и расход по мониторингу, текущее местоположение ТС по мониторингу 2. Заполнение путевого листа: пробег по мониторингу, время выезда/заезда, табличная часть ГСМ, места стоянок по геозонам. 3. Отчеты по данным загруженным в регистры сведений. 4. Предусмотрена автоматическая загрузка данных в фоновом режиме (условия работы данной загрузке читайте в описании товара) Модуль работает без включенной константы по настройкам мониторинга. Модуль формы предоставляется с открытым кодом, общий модуль защищен. Любой заинтересованный пользователь, имеет возможность скачать демо-версию расширения.

22656 руб.

25.05.2021    14424    42    8    

18

WEB-интеграция Программист Руководитель проекта Платформа 1С v8.3 Конфигурации 1cv8 1С:Франчайзи, автоматизация бизнеса Платные (руб)

Расширение значительно упрощает написание API на 1С. Веб программисты получают простой и понятный доступ к 1С. Описание API создаётся автоматически и представляется в виде удобном как для человека, так и для программной обработки.

24000 руб.

27.09.2024    1172    1    0    

3
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. cool.vlad4 2 01.08.11 13:39 Сейчас в теме
если вы публикуетесь, как мне кажется, лучше не писать на коленке (просто сотрите эту фразу) и оформите хорошо и будет вам счастье и будут вам плюсы ;) ....
2. alexk-is 6544 01.08.11 16:59 Сейчас в теме
4. WKBAPKA 215 01.08.11 23:52 Сейчас в теме
вот сдеся было уже
http://infostart.ru/public/83563/

ПЫЩЬ ПЫЩЬ ололо я водитель НЛО :)
7. cool.vlad4 2 02.08.11 10:10 Сейчас в теме
(4) ничего такого не было, там только украинский, здесь без гугль апи, для тех кто разбирается в вебе ,в принципе ничего особенного, ...для тех кто не очень - к концу года гугль обещает закрыть доступ к апи...
8. WKBAPKA 215 02.08.11 10:20 Сейчас в теме
2(7): не совсем понятно, что значит без гугль апи? а кто тогда переводит?
9. cool.vlad4 2 02.08.11 10:28 Сейчас в теме
(8) ошибочка, без ключа API....а как сделать совсем без апи, да просто запрос посылать вида http://translate.google.ru/translate_a/t?client=x&text={TEXT}&sl={LANG_FROM}&tl={LANG_TO}
10. GusevNA 361 02.08.11 18:04 Сейчас в теме
cool.vlad4 пишет:

(4) ничего такого не было, там только украинский, здесь без гугль апи, для тех кто разбирается в вебе ,в принципе ничего особенного, ...для тех кто не очень - к концу года гугль обещает закрыть доступ к апи...


Судя по новостям ( http://www.linux.org.ru/forum/talks/6347223 ) , Translate API будет платным. А может, они еще что придумают. Поживем - увидим. Если что - потом перепишу :D
11. cool.vlad4 2 02.08.11 18:06 Сейчас в теме
(10)да я тоже слышал, что будет платным...тогда придется использовать запрос, который я привел в 9
14. ms200999 02.11.11 15:46 Сейчас в теме
(10)Кому он платный нужен?
5. Serj1C 483 02.08.11 07:46 Сейчас в теме
проверил, код рабочий, буду первым плюсом
6. Lara.Builova 02.08.11 08:08 Сейчас в теме
Есть прекрасный онлайн переводчик, очень удобный: лежит тут
Прикрепленные файлы:
12. mzelensky 53 02.11.11 15:03 Сейчас в теме
А можно таким образом переводить не "слово", а текст целиком ??? Т.к. разбивать предложение на слова и переводить каждое по отдельности неправильно...
13. mzelensky 53 02.11.11 15:04 Сейчас в теме
+ переводит через раз...
15. makas 44 23.04.13 14:23 Сейчас в теме
Я не знаю зачем такая штука необходима, но плюсую за идею :)
16. METAL 299 24.02.17 11:21 Сейчас в теме
Сейчас адресная строка для перевода выглядит так https://translate.google.ru/#auto/ru/input_text
(исходный язык - определить автоматически, результирующий - русский, далее через слеш - исходная строка)
Вопрос - как это внедрить в 1С? Через HTTPСоединение? Пробовал кто-нибудь, коллеги?
17. GusevNA 361 28.02.17 02:27 Сейчас в теме
(16) Раньше у Гугл переводчика было API: отправляешь GET-запрос, получаешь XML. Они это API прикрыли несколько лет назад, оставили только переводчик на HTML-странице.
Если использовать Гугл-переводчик в 1С, то, наверно, самое простое - ПолеHTMLДокумента. Отправляешь туда слово - ждешь перевод, забираешь перевод.
Можно, конечно, посмотреть, например, через Proxy, какие AJAX-запросы посылаются серверу и попробовать посылать аналогичные. Но мне лично кажется, что лучше поискать другой переводчик с API.
Имея API, эту обработку легко переделать под другой переводчик.
Оставьте свое сообщение