Utilizamos Cookies de terceros para generar estadísticas de audiencia y mostrar publicidad personalizada analizando tu navegación. Si sigues navegando estarás aceptando su uso. Más información X
PortadaForo AyudaTutoriales
InicioForosForo Programación

Problema con Perl utilizando API google translate

zeit009
2011-03-31 13:36 - Respuestas: 0 - Tema nº: 2776613


ubuntu buenas! recientemente he empezado a trabajar con perl, cgi, etc.... y ando un poco perdido. mi problema es el siguiente: he creado un pequeño formulario para que la gente introduzca un texto, y dicho texto lo quiero traducir llamando a un programa de perl que lo tengo guardado en /lib/cgi-bin/ que se conecta a google y utilizando las api de google translate me devuelva el resultado. el formulario es el siguiente (sencillito) y lo he guardado en / var / www: 1. method = post 2. web translator 3. border=0> param('textointroducido'); en este punto, consigo guardar el texto introducido por el usuario ("textointroducido") en $txt. ahora mi problema es a la hora de hacer las llamadas google. he encontrado un programa escrito en perl que traduce del inglés al francés (en mi caso yo quiero que traduzca de ingles a español..pero bueno sirve de ejemplo) el problema de este programa es que el texto que queremos traducir es introducido a través de la entrada estándar . aqui os muestro el codigo 1. #!/usr/bin/perl 2. 3. use rest::client; 4. use json; 5. use html::entities qw(decode_entities); 6. 7. 8. while (1) 9. { 10. print "please enter english word: "; 11. chop ( $_ = ); 12. 13. my $client = rest::client->new(); 14. $client->get("https://www.googleapis.com/language/translate/v2?key=aizasyacjybem6lyelnyhzzxfydtk-v6-uz48bq&en&target=fr&q=$_"); 15. $response = $client->responsecontent(); 16. 17. $json_text = from_json( $response ); 18. 19. foreach my $french(@{$json_text->{data}->{translations}}) 20. { 21. my %ep_hash = (); 22. $ep_hash{translatedtext} = "translated to french: $french->{translatedtext}"; 23. 24. # print french 25. while (my($key, $value) = each (%ep_hash)) 26. { 27. print decode_entities($value); 28. } 29. } 30. print "\n"; 31. } bueno, he tratado de integrar el código escrito por mí en este programa de perl y nada. he leído que a lo mejor hay que codificar la variable $txt uri:: encode para integrarlo en la url...no sé...he estado leyendo y tampoco se cómo se haria .. bueno, a ver si alguien me puede ayudar o si alguien sabe de alguna manera más fácil de hacer lo que quiero que me lo comente...cualquier comentario o sugerencia es bienvenida. gracias! un saludo!
Página:1

Respuestas relacionadas:

Problema de acceso remoto utilizando una vpnProblema de acceso remoto utilizando una vpnForo
Problema aparece c:\progra 1\google\google 2\goec62Problema aparece c:\progra 1\google\google 2\goec62Foro
Programacion en perlProgramacion en perlForo
Programacion en perlProgramacion en perlForo
No sé manejar perl ni phpNo sé manejar perl ni phpForo
Intel 865 perlIntel 865 perlForo
Drivers de audio placa d 865 perlDrivers de audio placa d 865 perlForo
Drivers audio para d865 perlDrivers audio para d865 perlForo
Controladores de sonido de intel d865 perlControladores de sonido de intel d865 perlForo
Driver sonido placa perl 865 intelDriver sonido placa perl 865 intelForo
InicioSecciones
^ SubirAviso legal
Política Privacidad
Configurarequipos28 Marzo 2024