• Publicidad

Mandar cadenas a un programa externo por ejemplo el firefox

¿Apenas comienzas con Perl? En este foro podrás encontrar y hacer preguntas básicas de Perl con respuestas aptas a tu nivel.

Mandar cadenas a un programa externo por ejemplo el firefox

Notapor jositomi » 2008-06-07 11:51 @535

Hola, estoy empezando con Perl y el tema es que quería hacer un programa para que navegase por la página del router y lo desconectara.

Consigo ejecutar el Firefox y ponerle la dirección predeterminada del router, pero no consigo mandarle las cadenas de usuario y contraseña.

¿Cómo se le puede hacer esto?

Realmente lo que quiero es escribir en la misma página que abre en el campo de usuario y contraseña, pasando de uno a otro con un tabulador y ejecutando intro al final.

Muchísimas gracias.
jositomi
Perlero nuevo
Perlero nuevo
 
Mensajes: 2
Registrado: 2008-06-07 11:44 @530

Publicidad

Notapor explorer » 2008-06-07 12:39 @568

Bienvenido a los foros de Perl en Español, jositomi.

Para navegar por las páginas web te recomiendo usar el módulo WWW::Mechanize. Tienes ejemplos, preguntas frecuentes y un recetario.

En este mismo foro hay muchos hilos que lo mencionan. Usa el sistema de búsqueda, buscando por las palabras 'www' y 'mechanize' (activa la opción de "Buscar por todas las palabras").

De todas maneras, y al tratarse de un router, casi seguro que se puede dialogar directamente con él, según su marca y modelo. En CPAN hay módulos para dialogar con algunas máquinas de red, y en este foro hay ejemplos y códigos de acceso a ellos.

La opción más fácil, si estás empezando, es, desde luego, usar WWW::Mechanize. Pero... puede que no sirva para nada... porque la página web que estemos recuperando desde el router necesite el uso de JavaScript, desde el lado del cliente. WWW::Mechanize solo sirve (de momento) para manejar páginas HTML, y no para páginas que se generan en tiempo de descarga de la página. Tendrás que analizar la página que te devuelve para saber si corresponde a un tipo u otro.

Entonces, hay que cambiar de estrategia y mirar la posibilidad de controlar el navegador directamente, como comentas en tu mensaje. Pero entonces necesitas saber qué comandos y cómo se les puede enviar.

Hay módulos, como el WWW::Selenium, que montan una plataforma completa para el control de un navegador web, pero me parece que excede un poco en lo que querías hacer.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor jositomi » 2008-06-08 03:53 @203

Muchísimas gracias por la respuesta explorer y gracias también por la bienvenida.

Efectivamente el router no tiene servidor de telnet y no se puede entrar por consola.

He estudiado JavaScript, Java, PHP y C, y ahora por iniciativa propia me he metido con el Perl porque creo que es uno de los mejores para hacer cosas con el sistema operativo.

Muchas gracias, miraré las pistas que me has dado...

Un placer a ver descubierto este foro.
Saludos
jositomi
Perlero nuevo
Perlero nuevo
 
Mensajes: 2
Registrado: 2008-06-07 11:44 @530


Volver a Básico

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 20 invitados