Tradutor Babelfish
Publicado por Fábio Berbert de Paula 13/11/2002
[ Hits: 16.502 ]
Homepage: https://mestrefabio.com
Script usado para tradução de palavras e expressões
em várias línguas, Inglês/Português, Português/Inglês,
Inglês/Espanhol, etc. Roda no console e utiliza
conexão com a Internet para consultar o site
<a href="http://babelfish.altavista.com" >babelfish.altavista.com</a>. Ficou muito maneiro :)
#!/usr/bin/perl # +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ # babelfish.pl # # Script usado para tradução de palavras e expressões # em várias línguas, Inglês/Português, Português/Inglês, # Inglês/Espanhol, etc. Roda no console e utiliza # conexão com a Internet para consultar o site: # http://babelfish.altavista.com # # Programado por Fábio Berbert de Paula <fabio@vivaolinux.com.br> # Na web em: www.vivaolinux.com.br # # Rio de Janeiro, 26 de Julho de 2002 # +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ use strict; use IO::Socket; # módulo usado para efetuar conexões de rede use CGI; my %languages = ( "01" => "Inglês para Chinês:en_zh", "02" => "Inglês para Francês:en_fr", "03" => "Inglês para Alemão:en_de", "04" => "Inglês para Italiano:en_it", "05" => "Inglês para Japonês:en_ja", "06" => "Inglês para Koreano:en_ko", "07" => "Inglês para Português:en_pt", "08" => "Inglês para Espanhol:en_es", "09" => "Chinês para Inglês:zh_es", "10" => "Francês para Inglês:fr_en", "11" => "Francês para Alemão:fr_de", "12" => "Alemão para Inglês:de_en", "13" => "Alemão para Francês:de_fr", "14" => "Italiano para Inglês:it_en", "15" => "Japonês para Inglês:ja_en", "16" => "Koreano para Inglês:ko_en", "17" => "Português para Inglês:pt_en", "18" => "Russo para Inglês:ru_en", "19" => "Espanhol para Inglês:es_en" ); my $sair = 0; # fica em looping enquanto o usuário nãoescolher sair my $host = 'babelfish.altavista.com'; my $lp; do { print "\nEscolha um opção:\n"; foreach my $num (sort keys %languages) { my $valor = (split(/:/,$languages{$num}))[0]; print "\t".$num.'. '.(split(/:/,$languages{$num}))[0] ."\n"; } print "Sua escolha: "; my $languageNum = <>; chomp($languageNum); $languageNum = sprintf("%02d",$languageNum); $lp = (split(/:/,$languages{$languageNum}))[1]; if (!$lp) { print "Você digitou uma opção inválida...\n"; exit; } print "Texto a ser traduzido: "; my $urltext = <>; $urltext = CGI::escape($urltext); my $doit = 'done'; my $tt = 'urltext'; my $vars = "doit=$doit&tt=$tt&urltext=$urltext&lp=$lp"; # --------------------------------------------- # parte 2 - enviando print "Traduzindo, aguarde ...\n"; my $sock = new IO::Socket::INET ( PeerAddr => $host, PeerPort => '80', Proto => 'tcp', Type => SOCK_STREAM ); die "Ocorreu um erro durante a conexão: $!\n" unless $sock; # Contruindo menu com as linguagens disponíveis my $addinfo = "Accept-Language: en\r\nAccept-Charset: iso-8859-1,*,base64\r\n"; print $sock "GET /tr?$vars HTTP/1.1\r\nHost: babelfish.altavista.com\r\n\n"; my $codHTML = ''; while (<$sock>) { chomp; $codHTML .= $_ . ' '; } close($sock); $codHTML =~ /name=\"q\" value=(.*)>/; my $traducao = $1; $traducao =~ s/\>.*$//; print $traducao . "\n\n"; # ---------------------------------------------- print "Traduzir outra palavra ? [s/N] "; my $k = <>; chomp($k); if (lc($k) eq "s") { $sair = 0; } else { $sair = 1; } } while (!$sair);
Iniciando desenvolvimento web ágil com Perl (Mojolicious)
Agora temos uma assistente virtual no fórum!!! (246)
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Flatpak: remover runtimes não usados e pacotes
Mudar o gerenciador de login (GDM para SDDM e vice-versa) - parte 2
NGNIX - Aplicar SNAT para evitar roteamento assimetrico (13)
Definir tempo limite para acesso ssh (2)
Como eu faço para ativar o sistema de gestos do mousepad? (3)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta