Pular para o conteúdo

Implementando um tradutor de línguas no seu web site

Neste artigo mostro como criar uma interface transparente para o programa de tradução de línguas Babelfish.AltaVista.com usando sockets e expressões regulares.
Fábio Berbert de Paula fabio
Hits: 48.290 Categoria: PHP Subcategoria: Internet
  • Indicar
  • Impressora
  • Denunciar

Implementando o script - parte 1

Introdução


Na minha época de script kiddie meu sonho era colocar um tradutor de Inglês para Português no meu primeiro web site, que ficava hospedado no Geocities, numa URL enorme e que hoje nem existe mais. Pois é, o tempo foi passando, a lógica da informática tomando alguns rumos de esclarecimento na minha cabeça, fui apresentado ao Babelfish, à linguagem PHP e finalmente consegui criar uma gambiarra que funciona como um tradutor.

Neste artigo vou mostrar como projetar uma interface que utiliza o engine doAltavista.com, o babelfish.altavista.com, sem dúvida um dos melhores tradutores multi-línguas da Internet.

Implementando o script - parte 1


Nosso script funcionará da seguinte forma: um formulário será exibido ao usuário, que irá digitar o texto a ser traduzido, escolher a linguagem de origem/destino e pedir para traduzir submetendo o mesmo. O formulário é recursivo, ou seja, os dados são enviados para o mesmo script PHP que mostrou o formulário na tela. Caso exista algum texto a ser traduzido, antes que apareça o formulário na tela, uma rotina de consulta ao engine babelfish será executada e o resultado mostrado na tela.

No primeiro bloco de código do programa definimos algumas constantes que serão processadas pelo babelfish e faremos a verificação do conteúdo da variável que armazena o texto, para saber se apenas mostraremos o formulário na tela ou se efetuaremos conexão com o AltaVista.com:
<?
// definição de constantes
$DOIT = 'done';
$TT = 'urltext';

// se o formulário foi submetido, teremos urltext diferente de vazio
if ($urltext) {
$traducao = traduzir($urltext,$lp);
} else {
$traducao = '-';
}

?>
Em seguida vou digitar o bloco de código HTML que mostra o formulário na tela,com espaço para a entrada do texto a ser traduzido e uma caixa de seleção onde o usuário escolherá as linguagens de origem/destino.
<html>

<style type="text/css">
td,textarea,select,input,a:link,a:visited {
font-family: Arial,Helvetica,Sans-Serif;
font-size: 11px;
color: #000000;
}
</style>

<body bgcolor="#fffff0">

<form name="form1" action="<? echo $PHP_SELF ?>">
<table width="400" bgcolor="#000000" cellpadding=1 cellspacing=0
align="center">
<tr><td>
<table width="100%" bgcolor="#ffffff" cellpadding=3 cellspacing=0>
<tr>
<td class="codigo" nowrap><b><big>BabelFish Translator</big>
</b></td>
<td class="codigo" align="right">
<a href="http://www.altavista.com" >Powered by
AltaVista</a>
</td>
</tr>

<tr><td colspan=2>
Texto:
<br>
<textarea name="urltext" style="width: 100%;" rows=6><? echo
$urltext ?></textarea>
</td></tr>

<tr>
<td width="1%" nowrap>Selecione uma linguagem:</td>
<td>
<select name="lp" style="width: 100%;">
<option value="en_zh">Inglês para Chinês
<option value="en_fr">Inglês para Francês
<option value="en_de">Inglês para Alemão
<option value="en_it">Inglês para Italiano
<option value="en_ja">Inglês para Japonês
<option value="en_ko">Inglês para Coreano
<option value="en_pt">Inglês para Português
<option value="en_es">Inglês para Espanhol
<option value="zh_es">Chinês para Inglês
<option value="fr_en">Francês para Inglês
<option value="fr_de">Francês para Alemão
<option value="de_en">Alemão para Inglês
<option value="de_fr">Alemão para Francês
<option value="it_en">Italiano para Inglês
<option value="ja_en">Japonês para Inglês
<option value="ko_en">Coreano para Inglês
<option value="pt_en" SELECTED>Português para Inglês
<option value="ru_en">Russo para Inglês
<option value="es_en">Espanhol para Inglês
</select>
</td>
</tr>

<tr>
<td align="right">Tradução </td>
<td><? echo $traducao ?></td>
</tr>

<tr><td colspan=2 align="center">
<br>
<input type="submit" value=" Traduzir agora ! ">
</td></tr>

</table>
</td></tr>
</table>
</form>

</body>
</html>
   1. Implementando o script - parte 1
   2. Implementando o script - parte 2

Corretor Ortográfico no Vim - Guia definitivo

Tradutor de palavras em vários idiomas via shell

Como baixar vídeos do Facebook via terminal

Como transformar um áudio em vídeo com efeito de forma de onda (wave form)

Criando um painel de rede em PHP

Conheça o PHP-Fusion

Instalando o Gerenciador Clínico Odontológico

Ambiente LAMP no Debian

PHP-GD retorna status do MSN Messenger , Skype e GTalk

Servidor LAMP + PHPMyAdmin + Webalizer

#1 Comentário enviado por arknoid em 29/12/2003 - 16:52h
hehehehehe esse é o fabiovivaolinux....
cara muito massa esse tradutor soh espero que funcione!
#2 Comentário enviado por jllucca em 01/09/2004 - 19:40h
Arknoid, perdidão... não tem o que falar mantenha-se calado!

Como sei que não vou receber cortada dele huahuahua :D
#3 Comentário enviado por comfaa em 28/10/2008 - 13:05h
muito legal !!!

Contribuir com comentário

Entre na sua conta para comentar.