Está usted en Indice > Construcción > Lenguajes > Perl > Lecciones y Paso a Paso > Crear un Robot que Navega por Internet en Perl
Construcción
Maletín
Utilidades
Cursos
Promoción
Rentabilidad
Zona Novatos
Foros
Acceso a tu cuenta

Crear un Robot que Navega por Internet en Perl (2)

Normalmente perl espera hasta que el buffer este de cierto tamaño antes de hacer el flush, por eso se cambia el valor de esta variable para ver las salidas en tiempo real.

$Win32::OLE::Warn = 3;

Con ésta línea le estamos diciendo al módulo Win32::OLE como manejar errores. Más información acerca de esto viene en la documentación del mismo módulo.

Listo, ya tenemos todo preparado para iniciar el navegador.

StartIE();

Si corremos nuestro script veremos como el Internet Explorer es lanzado automáticamente, inicia con una página en blanco y ya es todo. Bastante aburrido, pero aún falta más.

Haciendo más inteligente nuestro robot

Ya tenemos nuestro navegador abierto y listo para que le mandemos ordenes. Entonces lo que vamos a hacer es entrar a Google.com.

my $segundos = Navigate("http://google.com/");
print "Google tardo $segundos segundos en cargar.n";

La primera línea llama a la función "Navigate()" del módulo Win32::SAM. Ésta función recibe una cadena con una ruta y llama otras funciones del módulo Win32::OLE haciendo que el navegador cargue la página que le indicamos.

Esta función regresa un número que es la cantidad de segundos que tardo la página en cargar, que después desplegamos en la segunda línea.

Perfecto, vamos por bueno camino, ya se abre nuestro navegador de manera automática y carga la página inicial de Google.

Ahora, vamos a decirle a nuestro robot que busque "Perl en Español".

Lo primero que debemos de hacer es decirle a nuestro robot que llene la caja de búsqueda con los términos que queremos. Si vemos el código fuente de Google veremos que la caja de búsqueda tiene el nombre de q. Entonces llamamos a la función "SetEditBox()" del módulo SAM:

SetEditBox("q","Perl en Español");

Ésta función lo que hace es recibir dos argumentos. El primero es el nombre del campo o caja de la forma que queremos llenar, y el segundo término es el valor que le queremos poner.

Entonces al ejecutar nuestro script se va abrir el navegador, va a cargar la página de Google y va a introducir las palabras "Perl en Español" en la caja de búsqueda.

Muy bien, ya hicimos que nuestro robot llenara la forma de búsqueda, ahora sólo falta que haga el submit.

$segundos = ClickFormButton("btnG");
print "La página de resultados tardo $segundos segundos en cargarn";

En la primera línea llamamos a la función "ClickFormButton()", que como su nombre lo dice lo que hace es cliquea un botón.

La función recibe un argumento, el cual es una cadena con el nombre del botón que queremos cliquear. El nombre del botón es aquel que está definido con la etiqueta name.

<input type=submit value="Google Search" name=btnG>

En el caso de Google vemos que el nombre del botón de submit se llama "btnG".

Ésta función regresa el número de segundos que tardo en cargar la respuesta del submit de la forma, que con la segunda línea imprimimos su resultado.



Usuarios que han visto este tema también han visto...

- Creando thumbnails con Perl
- Contador de visitas con Perl
- ¿Cómo enviar emails usando Perl y Sendmail?
- Objetos en PERL 6
- Crear un contador de accesos a un sitio web en Perl


Versión imprimible - Versión imprimible de este documento
Enviar e-mail - Enviar por e-mail este documento
Publicidad

Información legal | Política de Privacidad | Contacte con nosotros

Otro proyecto de Factoría de Internet. Copyright© 2003-2008 Factoría de Internet S.L.. Todos los derechos reservados.


Página generada el 08-10-2008 a las 05:24:09