Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Перевод с google translate, максимальное количество символов 
:(
    Опции темы
DoZENT
Дата 1.2.2010, 19:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 326
Регистрация: 2.6.2006

Репутация: нет
Всего: 1



Привет всем! Никто не работал с google translate через AJAX запросы? Делаю, грубо говоря, вот так:

Код

   function submitChange() {
      var value = document.getElementById('source').value;
      var src = document.getElementById('src').value;
      var dest = document.getElementById('dst').value;
      google.language.translate(value, src, dest, translateResult);
      return false;
    }

код работает, но только с ограничением на кол-во символов (что-то около 300 символов). Мне же надо сделать перевод текста состоящего из 1000 символов максимум.  Идея разбивать текст на предложения (по точкам) не подходит - точка может отделять ведь не только предложения, но может быть просто сокращением и т.д. Тем более, после около десятого запроса подряд гугл перестает отвечать - видимо стоит какое-то ограничение.
Есть какие-то идеи?


--------------------
Какая боль, какая боль, Internet Explorer 5.0...
PM MAIL   Вверх
IDVsbruck
Дата 1.2.2010, 22:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 778
Регистрация: 12.11.2006

Репутация: 8
Всего: 22



Ага. Оплатить услугу.
Тогда снимется и ограничение на длину перевода, и на количество запросов к сервису за единицу времени (есть там и такое).
PM MAIL   Вверх
DoZENT
Дата 1.2.2010, 22:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 326
Регистрация: 2.6.2006

Репутация: нет
Всего: 1



Цитата(IDVsbruck @ 1.2.2010,  22:01)
Ага. Оплатить услугу.
Тогда снимется и ограничение на длину перевода, и на количество запросов к сервису за единицу времени (есть там и такое).

а, тогда все понятно. спасибо за ответ! не подскажите, где можно расценки найти и вообще страницу гугла про эту услугу?


--------------------
Какая боль, какая боль, Internet Explorer 5.0...
PM MAIL   Вверх
IDVsbruck
Дата 2.2.2010, 20:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 778
Регистрация: 12.11.2006

Репутация: 8
Всего: 22



Сталкивался с таким, когда имел дело с запросами на Гугл Мепс, но платить не хотел, поэтому темой не занимался.
Думаю, что тут похоже.

Во-первых, ограничение на строку существенно больше - при GET-запросе ограничено УРЛом (в иИЕ 2048 символов), при POST-запросе - 5 тыс. символов. Так что просто сконфигурируй правильно свои запросы и с длиной все получится.
Во-вторых, на Гугле есть форумы Google AJAX API. Посмотрел - многие жалуются на невозможность совершения большего количества запросов за единицу времени. Им советуют заключить платное соглашение с Гуглом на безграничное использование инструмента. Как и расценки не видел. Поищи, может найдешь ...
PM MAIL   Вверх
DoZENT
Дата 2.2.2010, 20:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 326
Регистрация: 2.6.2006

Репутация: нет
Всего: 1



Цитата(IDVsbruck @ 2.2.2010,  20:33)
Сталкивался с таким, когда имел дело с запросами на Гугл Мепс, но платить не хотел, поэтому темой не занимался.
Думаю, что тут похоже.

Во-первых, ограничение на строку существенно больше - при GET-запросе ограничено УРЛом (в иИЕ 2048 символов), при POST-запросе - 5 тыс. символов. Так что просто сконфигурируй правильно свои запросы и с длиной все получится.
Во-вторых, на Гугле есть форумы Google AJAX API. Посмотрел - многие жалуются на невозможность совершения большего количества запросов за единицу времени. Им советуют заключить платное соглашение с Гуглом на безграничное использование инструмента. Как и расценки не видел. Поищи, может найдешь ...

я сейчас делаю точно как в примерах у гугла.
Код

    function submitChange() {
      var value = document.getElementById('source').value;
      var src = document.getElementById('src').value;
      var dest = document.getElementById('dst').value;      
      
      var resultBody = document.getElementById("results_body");        
      resultBody.innerHTML = "";
      
      if (value){        
        google.language.translate(value, src, dest, function(result){            
        if (!result.error){            
            resultBody.innerHTML = result.translation;
        }
        else {
            resultBody.innerHTML = 'Невозможно перевести текст';
        }
      });
      
      if (!resultBody.innerHTML){
        resultBody.innerHTML = 'Невозможно перевести текст (превышено количество знаков или попыток в минуту)';
      }
      
      return false;      
     } 
    
    }

при этом если кол-во символов > 350 примерно, то выдается сообщение 'Невозможно перевести текст (превышено количество знаков или попыток в минуту)'. Что же я делаю не так, подскажите пожалуйста, как добиться этих 5000 символов, о которых вы говорите?

Это сообщение отредактировал(а) DoZENT - 2.2.2010, 20:52


--------------------
Какая боль, какая боль, Internet Explorer 5.0...
PM MAIL   Вверх
IDVsbruck
Дата 2.2.2010, 21:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 778
Регистрация: 12.11.2006

Репутация: 8
Всего: 22



Вот ссылочка с таким же вопросом и ответом на него.
Суть в том, что со странички не получится отправить POST-запрос Гуглу. Надо проксировать запрос через сервер: кидать по ajax'у на сервер строку, а сервер сделает запрос Гуглу, получит ответ и вернут клиенту. Кстати, так можно попробовать обойти ограничение на количество запросов, используя список прокси-серверов (думаю, список серверов надо иметь дли-и-инный, потому как таких "умных" много может найтись и попыток может быть много) smile
В последнем посте по ссылке есть даже примеры реализации отправки запросов с сервера на Джаве, ПэХаПэ, Перле, Флеше.
PM MAIL   Вверх
DoZENT
Дата 2.2.2010, 22:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 326
Регистрация: 2.6.2006

Репутация: нет
Всего: 1



Цитата(IDVsbruck @ 2.2.2010,  21:15)
Вот ссылочка с таким же вопросом и ответом на него.
Суть в том, что со странички не получится отправить POST-запрос Гуглу. Надо проксировать запрос через сервер: кидать по ajax'у на сервер строку, а сервер сделает запрос Гуглу, получит ответ и вернут клиенту. Кстати, так можно попробовать обойти ограничение на количество запросов, используя список прокси-серверов (думаю, список серверов надо иметь дли-и-инный, потому как таких "умных" много может найтись и попыток может быть много) smile
В последнем посте по ссылке есть даже примеры реализации отправки запросов с сервера на Джаве, ПэХаПэ, Перле, Флеше.

спасибо за то что уделяете время моему посту! поставил вам + =)
если честно, я ничего не понял из тех примеров((( нет ли готового примера как перевести строку из 1000 символов на другой язык? я, к сожалению, первый раз сталкиваюсь с javascript и всеми этими вещами, но проект надо сделать.


--------------------
Какая боль, какая боль, Internet Explorer 5.0...
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1122 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.