Google переводчик все теги портит


lutskboy
130

Добрый день 

сделал скрипт который получает некий текст и переводит его через google translate.

в тексте присутствуют htm теги. но после перевода он их портит. то пробел добавит. то вообще не закроет тег.

что я сделал. заменил все теги на другие символы. юникод. тоже не помогло . на html сущности. тоже гад испортит все. и так менял

<p> => (1000)

потом думал обратно пройдусь 

(1000)=><p>

то что он как бы пробел ставит не проблема

< p> </ p> ( 1000)

но он может тег удалить или скобку убрать. короче все партачит

как быть. посоветуйте что нибудь.


BrickLayer
Если вы в состоянии сделать «некий скрипт», то что мешает вам дописать в него исключения, чтобы переводчик их вообще не трогал?

artshevtsov
Преобразуйте ваш html в объекты, в которых лежат все свойства и тексты, пройдитесь по ним, соберите тексты, скормите переводчику тексты, разделив их, например, через pipe |, замените тексты в объектах на переведенные, соберите в выходной html. На php, например, это можно сделать при помощи класса https://www.php.net/manual/ru/book.simplexml.php
или библиотеками типа DiDOM.


lutskboy
BrickLayer #:
Если вы в состоянии сделать «некий скрипт», то что мешает вам дописать в него исключения, чтобы переводчик их вообще не трогал?

и как ему сказать что это не трогай?


lutskboy
artshevtsov #:
Преобразуйте ваш html в объекты, в которых лежат все свойства и тексты, пройдитесь по ним, соберите тексты, скормите переводчику тексты, разделив их, например, через pipe |, замените тексты в объектах на переведенные, соберите в выходной html. На php, например, это можно сделать при помощи класса https://www.php.net/manual/ru/book.simplexml.php
или библиотеками типа DiDOM.

спасибо. неплохая идея

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *