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.287 Categoria: PHP Subcategoria: Internet
  • Indicar
  • Impressora
  • Denunciar
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

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:
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.
<?
// 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>
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.
   1. Implementando o script - parte 1
   2. Implementando o script - parte 2

tzwatch - Navegando pelo horário mundial no Debian

Kernel 6.18 em foco, betas fervilhando e avanços em IA no Linux

Docalysis: Análise de Documentos com Inteligência Artificial

O Linux e o Star Office

Como camuflar seu WhatsApp Web usando Snippets JavaScript

Easy Gallery - Componente Joomla

Estatísticas para todos

Simulando o SSH via WEB

Captive Portal Customizado

Aces Downz - Gerenciador de downloads e controle de tráfego

#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.