Сколько языков ты знаешь – столько раз ты человек…
А если не знаешь, а надо? Обращаемся за помощью к переводчикам. Последнее время особенно популярен стал гугл-переводчик. Гугл настолько почувствовал свою силу, что выпустил API для использования переводчика автоматно.
Так ли он крут – переводчик от гугла?
В качестве исходного материала возьмем rss-ленты.
Как получить-обрабатывать ленту новостей средствами php описывать не буду (в и-нете есть масса примеров). Я использую свою корявую библиотеку, ибо свое – дороже и надежнее. Мне попадалось очень много открытых кодов обработки rss-лент, так что подобрать подходящую – не проблема.
Берем понравившуюся rss-ленту, переводим ее с использованием Google Translate API и показываем на блоге (или сайте).
Можно взять за основу пример использования, показанный в http://gritsinger.com/ispolzovanie-google-translate-api-v-php.html
Я выбрала другой ресурс - http://code.google.com/p/php-language-api/.
Тут есть краткий простой пример использования, а сам php-класс находится тут
код
Итак, рассмотрим англоязычную ленту и переведем ее на русский.
Не вдаваясь в подробности, php-код будет выглядеть приблизительно следующим образом:
<?
Function translate($text, $from, $to)
{
$trans_text = Google_Translate_API::translate($text, $from, $to);
if ($trans_text !== false)
return $trans_text;
return “”;
}
Receive_rss();
foreach($rss_item as $key => $rss_item )
{$title= translate(get_rss_tag($rss_item,”title”), 'en', 'ru');
$date= translate(get_rss_tag($rss_item,”pubDate”), 'en', 'ru');
$description =translate(get_rss_tag($rss_item,”description”), 'en', 'ru');
add_rss($title,$date,$description);
}
put_rss();
?>
Исходная rss-лента (подробнее про использование rss-ленты на блоге см. Размещение rss-ленты новостей на блоге):
(По причине использования одной и той же javascript-функции, смотреть корректно фиды новостей в данном варианте можно только загрузив посты по отдельности.)
Loading...
Результат, как видно из примера, ужасный.
Теперь возьмем русскоязычную ленту. Родство языков сразу видно – результат более-менее приличный.
Код остается прежним, меняются только параметры для функции translate(get_rss_tag($rss_item,”pubDate”), 'ru', 'uk')
Посмотреть результат
Важный нюанс, на который надо обратить внимание – исходный материал должен быть представлен в кодировке UTF-8.
Итак, можно делать вывод – качество перевода очень и очень плохое, результат можно показывать только после ручной доработки. Полной автоматизации этой задачи пока не достигнуто.
No comments:
Post a Comment