Автоматический перевод текста при парсинге с использованием сервиса Google переводчик

С помощью запросов к Google переводчику (Google Cloud Translation) можно автоматически переводить текст непосредственно при парсинге любого контента.

Запросы к сервису Google переводчика производятся с помощью макроса шаблона вывода PHP_SCRIPT. Данный макрос позволяет отправлять POST запросы к любым URL с любыми отправляемые данными.


Сначала нужно получить Api key для Google переводчика (Google Cloud Translation)

Ссылка на описание сервиса для перевода Google Cloud Translation (там же можно получить Api key для перевода)

Исходя из документации, для автоматического перевода текста нужно отправить обычный POST запрос.

Перевод текста через Google Cloud Translation

Текст для перевода вставляется в параметр q. Направление перевода (с какого языка и на какой перевести, например: en ru) указывается в параметрах source и target. По параметру format я описания не нашел, но полагаю, что значение может быть text или html.

Api key для Google переводчика (Google Cloud Translation) вставляется в URL запроса в параметр key

1
https://translation.googleapis.com/language/translate/v2?key=API_KEY

Итак, чтобы автоматически отправлять POST запросы к переводчику Google и переводить текст нужно в шаблон вывода добавить такую конструкцию

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<PHP_SCRIPT=https://translation.googleapis.com/language/translate/v2?key=API_KEY[UTF-8]>
<HEADERS></HEADERS>
<REPLACE>
{skip}"translatedText": "|
"{skip}|
\r\n|{br2}
\u003c|<
\u003e|>
\"|"</REPLACE>
{
  "q": "[FIRST_REPLACE("|\")]Текст для перевода[/FIRST_REPLACE]",
  "source": "en",
  "target": "ru",
  "format": "text"
}
</PHP_SCRIPT>

Где вместо API_KEY вставляете свой ключ Api Google переводчика.

Вместо Текст для перевода вставляете макрос границы парсинга, которая извлекает из HTML WEB страницы нужный текст.


Дополнительно

Если нужно переводить длинный текст (более 1000 символов) его можно разбить на части с помощью макроса шаблона вывода [SLICE_STRING].

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
[SLICE_STRING]
 
{ADDTOSTART}<PHP_SCRIPT=https://translation.googleapis.com/language/translate/v2?key=ВАШ API КЛЮЧ[UTF-8]>
<HEADERS></HEADERS>
<REPLACE>
{skip}"translatedText": "|
"{skip}|
\r\n|{br2}
\u003c|<
\u003e|>
\"|"</REPLACE>
{
  "q": "{/ADDTOSTART}
 
{ADDTOEND}",
  "source": "en",
  "target": "ru",
  "format": "text"
}
</PHP_SCRIPT>{/ADDTOEND}
 
{COUNT}1000{/COUNT}
 
{METHOD}Word{/METHOD}
 
[FIRST_REPLACE("|\")]
 
ТЕКСТ ДЛЯ ПЕРЕВОДА
 
[/FIRST_REPLACE][/SLICE_STRING]



1 Star2 Stars3 Stars4 Stars5 Stars (оценок: 5, средний балл: 4.20)

Loading...
Автор: admin, 8 February 2021
Рубрики: Примеры парсинга
Tags: , ,
Есть 2 коммент. к сообщению: “Автоматический перевод текста при парсинге с использованием сервиса Google переводчик”
  1. Василий says:

    У меня в тексте для перевода, есть картинки и переводчик залезает в код и переводит их тоже, соотвественно картинки скачать не получается. Как быть в таком случае?

  2. Василий says:

    Данный способ больше не работает. Как быть?

Написать комментарий

Последние статьи

css.php