Реализация массового перевода через google translate

Тема в разделе "Парсинг конкретных сайтов по запросу (ПЛАТНО)", создана пользователем dandandan, 13 фев 2020.

  1. dandandan

    dandandan New Member Пользователи

    Регистрация:
    20 сен 2013
    Сообщения:
    20
    Задача стоит следующая. Есть на входе txt файлы. В них текст помещен в теги. Не все теги являются html тегами, некоторые придуманы самостоятельно. Например, <metadesc></metadesc> <url></url> и т.д.

    Длина текста в файле может быть от 100 до 50 000 символов. Количество файлов около 1 млн.
    Нужно перевести это все дело через бесплатный гугл:
    • без потери тегов (у меня гугл их периодически тоже переводит),
    • без потери кусков текстов (Текст же будет разбиваться на куски. Конкретно я не знаю, как делать проверку пришел ли текст или нет и обратно отправить на перевод)
    • с использованием прокси (будет штук 50 ИПВ6 проксей)
    • Хотелось бы 1 раз запустить переводчик и забыть о нем, не контролировать.
    По цене договоримся.
     
  2. Фёдор

    Фёдор Active Member Пользователи

    Регистрация:
    9 фев 2014
    Сообщения:
    108
    Я думаю, что тут. Только через апи нужно делать. По другому получится велосипед.
     
  3. kagorec

    kagorec Администратор Команда форума Администратор

    Регистрация:
    3 янв 2011
    Сообщения:
    3.774
    Город:
    Riga
    Можем обсудить цену массового перевода файлов через translate.google.com с учетом сохранения технических (своих) тегов.
    1.000.000 файлов займет примерно сутки\двое.
     
    Root нравится это.
  4. dandandan

    dandandan New Member Пользователи

    Регистрация:
    20 сен 2013
    Сообщения:
    20
    АПИ платный, поэтому не вариант.
     
  5. dandandan

    dandandan New Member Пользователи

    Регистрация:
    20 сен 2013
    Сообщения:
    20
    Нужна готовая реализация задачи (файл для СД), а не результирующие файлы с переводом.
     
  6. Фёдор

    Фёдор Active Member Пользователи

    Регистрация:
    9 фев 2014
    Сообщения:
    108
    Там есть бесплатный лимит месячный. Зарегаете пару аккаунтов, получите ключи для каждого, и будет нужный эффект.
     
  7. dandandan

    dandandan New Member Пользователи

    Регистрация:
    20 сен 2013
    Сообщения:
    20
    Про бесплатный лимит знаю. Его слишком мало...

    К сожалению, для поставленной задачи придется регить примерно 1000 акков ((((. Это не вариант.

    Собирал сам проект. Застопорился на этапе: Гуглу надо подсунуть текст длиной не более Х символов. Т.е. текст из Y символов разбивается на Z запросов. Не получается / не знаю как проконтролировать, что от гугла пришел ответ. Получается часть текста пропадает.
     
  8. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    12.223
    Если нужно, могу сделать макрос для разбивки контента по указанному числу символов.
     
  9. dandandan

    dandandan New Member Пользователи

    Регистрация:
    20 сен 2013
    Сообщения:
    20
    Мне не надо текст разбивать. У меня все идеально разбивается с учетом окончания предложения.

    Мне нужен контроль отправки разбитого текста: гугл может либо перевести текст, либо не перевести (слишком часто запрашиваю перевод). Во втором случае надо повторить запрос. Проблема в том, что каждый запрос это не отдельная ссылка в нижней части программы, а автоматически-генерируемая из текста.

    Текст разбивается на блоки и в цикле выполняется запрос к гуглу на перевод этих блоков.

    Запрос, который делается:
    <PHP_SCRIPT=Ссылки недоступны для гостей, зарегистрируйтесь или авторизуйтесь на форуме!
     
    Последнее редактирование: 13 фев 2020
  10. Фёдор

    Фёдор Active Member Пользователи

    Регистрация:
    9 фев 2014
    Сообщения:
    108
    Ну так а что если в этот цикл чекэнтри добавить, и в случае, если ответа нет, выводить макрос релоаддокумент. Это как 1 из вариантов.
     
  11. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    12.223
    Каким образом определить ответ сервиса в случае не удачного перевода? В контенте ответа есть какое-то вхождение, либо случается ошибка запроса?
     
  12. Фёдор

    Фёдор Active Member Пользователи

    Регистрация:
    9 фев 2014
    Сообщения:
    108
    да скорее всего когда рекаптча вылетает, это и есть сигнал, отвечающий за отсутствие перевода.
     
  13. dandandan

    dandandan New Member Пользователи

    Регистрация:
    20 сен 2013
    Сообщения:
    20
    Рекапчи нет. В моем случае это недокументированный АПИ гугла без токенов.

    Гугл выдает пустую страницу. Т.е. можно сделать проверку на колво символов, возможно он еще и код выдает не 200, а какой-нибудь другой, типа 404. Узнать его не могу.

    Макрос - это макрос для webapp ? Я не пользуюсь js кодом в своем решении.
    reload_Document - тоже для webApp ?
     
  14. dandandan

    dandandan New Member Пользователи

    Регистрация:
    20 сен 2013
    Сообщения:
    20
    Пока без "правильных макросов СД"
    Вызов урла "C:/doc/1.txt" . Разбиение на блоки текста. Дальше в блоке повторящиеся элементы вызов:

    [IF] ( LENGTH( <PHP_SCRIPT=Ссылки недоступны для гостей, зарегистрируйтесь или авторизуйтесь на форуме! ) == 0 )
    [THENTEXT][RELOADDOCUMENT] [/IF]

    RELOADDOCUMENT перезагрузит целиком документ "C:/doc/1.txt" или запрос <PHP_SCRIPT=Ссылки недоступны для гостей, зарегистрируйтесь или авторизуйтесь на форуме!
     
    Фёдор нравится это.
  15. Фёдор

    Фёдор Active Member Пользователи

    Регистрация:
    9 фев 2014
    Сообщения:
    108
    Нет. Это для основного шаблона вывода макрос.
     
  16. dandandan

    dandandan New Member Пользователи

    Регистрация:
    20 сен 2013
    Сообщения:
    20
    Нагулил пример на форуме, переделал под себя.
    Вызов урла "C:/doc/1.txt" . Разбиение на блоки текста. Дальше в блоке повторящиеся элементы вызов:

    Код:
    [CHECKENTRY2(echo <PHP_SCRIPT= https://t1.php </PHP_SCRIPT> ))]
    [THENTEXT]
    
    OK
    
    [ELSETEXT]
    
    [RELOADDOCUMENT] или <PHP_SCRIPT= https://t1.php </PHP_SCRIPT>
    
    [/CHECKENTRY2]
    
    [RELOADDOCUMENT] перезагрузит вызов урла "C:/doc/1.txt" ?
     
  17. kagorec

    kagorec Администратор Команда форума Администратор

    Регистрация:
    3 янв 2011
    Сообщения:
    3.774
    Город:
    Riga
    Учтите что в таком решении google вам может вернуть непереведенный текст (прокся глюканет или уже забанена) и как бонус "пропадание" одной из отправленной части полного текста.
     
  18. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    12.223
     

Поделиться этой страницей