Índice:
Dos tipos de referencia: Posición y Tags
Comandos del navegador
Bucles
Conclusión
Hace poco, mientras escribía un post acerca de cómo llenar la base de datos de cuentas basura en una plataforma de registro sin captcha como Prestashop (link) me daba cuenta de lo poderosa que es esta herramienta (incluso más de lo que yo me imaginaba) y como tal, se merece una entrada a modo de tutorial de los comandos y usos básicos e interesantes.
Introducción
iMacros nos permite automatizar tareas en el navegador, como hacer click en determinado sitio, visitar cierta página, introducir texto en alguna caja de texto, y realmente cualquier cosa que podamos realizar desde el navegador en cualquier página web de forma automatizada, incluso permite la realización de bucles.
Dos tipos de referencia: Posición y Tags
Para realizar estas tareas automáticas, tenemos dos tipos de referencias que a la hora de grabar, pueden marcar cierta diferencia, y es bueno conocer ambas para saber cual nos conviene usar en cada momento.
- Posición:
Esta forma de referencia se basa simplemente en la posición (X,Y) como si de una gráfica de dos dimensiones se tratara. Esto redirige el ratón a cierta posición para realizar un click.
CLICK X=40 Y=61 (hace click en esa posición)
CLICK X=984 Y=14 CONTENT=hola (hace click en esa posición y escribe "hola")
Nota: la posición 0,0 empieza arriba a la izquierda
- Tags (HTML):
Esta forma de referencia se basa en los tags HTML. Este método permite también clickear, pero se complica mucho más, ya que para clickear en un sitio por ejemplo, realiza lo siguiente:
TAG POS=1 TYPE=SPAN ATTR=TXT:Entradasrecientes
Es mucho más complicado de programar que por posición X,Y pero a la hora de grabar es igual de sencillo.
Primer ejemplo: Búsqueda en el buscador
Para entender mejor ambas formas de referenciar, realizaremos una búsqueda en el buscador de la página, realizando asi de ambas formas lo mismo.
- Posición:
URL GOTO=http://delanover.com/ (vamos a la página)
CLICK X=932 Y=130 CONTENT=hola (clickeamos en el cuadro de texto, y escribimos "hola"
CLICK X=1028 Y=132 (clickeamos en esa posición, que es la del botón de buscar)
- Tags (HTML):
URL GOTO=http://delanover.com/
TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://delanover.com/ ATTR=ID:searchQuery CONTENT=hola (hace referencia al contenido dela caja de texto)
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://delanover.com/ ATTR=VALUE:Encontrar (hace referencia al botón de buscar)
Comandos del navegador
Explicaremos ahora los comandos que hacen referencia al navegador en sí, y no al contenido.
-Para ir a una página (cuadro de direcciones), lo realizaremos mediante:
URL GOTO=http://delanover.com/
-Abrir y cerrar pestañas:
TAB OPEN
..
TAB CLOSE
-Para moverse entre pestañas:
TAB T=1
TAB T=2
..
Nota: Son posiciones relativas. Si nos encontramos en la pestaña tercera, TAB T=2 será la cuarta, y así sucesivamente.
-Esperar X segundos:
WAIT SECONDS=3
-Descargar algo:
[lineas de descarga]
ONDOWNLOAD FOLDER=C:\Users\lipman\Downloads FILE=Firefox.exe WAIT=NO
[lineas de descarga]
Seleccionamos la ruta, el nombre, y si queremos esperar a que termine la descarga para terminar el iMacros. Con el nombre cuidad con las extensiones, pero si queremos dejar el nombre por defecto de la descarga, simplemente dejar un *.
Segundo ejemplo: Descargar Firefox
El segundo ejemplo consistirá en abrir 3 pestañas, en la primera pondremos la página para la descarga de firefox, en la segunda no pondremos nada, y en la tercera pondremos esta página. Esperaremos unos segundos, iremos a la primera pestaña, y descargaremos firefox.
TAB T=1 (vamos a la pestaña 1)
URL GOTO=http://www.mozilla.com/es-ES/download/?product=firefox-4.0rc1&os=win〈=es-ES (vamos a esa página)
TAB OPEN
TAB OPEN (abrimos 2 pestañas)
TAB T=3 (hacemos referencia a la tercera)
URL GOTO=http://delanover.com (vamos a esa página)
WAIT SECONDS=3 (esperamos 3 segundos)
TAB T=1 (vamos a la primera pestaña)
ONDOWNLOAD FOLDER=C:\Users\lipman\Downloads FILE=* WAIT=NO (seleccionamos las propiedades de la descarga)
TAG POS=1 TYPE=A ATTR=HREF:http://download.mozilla.org/?product=firefox-4.0rc1&os=win〈=es-ES&&TXT:hazclicaquí (clickeamos en la descarga, método de referencia: tags)
Bucles
Puesto que esta herramienta trata de automatizar una tarea, lo ideal es realizar con este complemente tareas repetitivas, como anteriormente realizábamos rellenando la base de datos con cuentas basuras. Para esto nos serviremos de la variable {{!loop}}
Este apartado lo entenderemos mejor con un ejemplo: supongamos que queremos visitar las páginas www.1.com, www.2.com… y así sucesivamente. Para ello realizariamos:
URL GOTO=www.{{!loop}}.com
en donde {{!loop}} vale cada vez un número más incrementado, que realmente es el número de bucle que se está realizando. Le dariamos a “Ejecutar bucle” desde 1 hasta donde queramos.
Conclusión
Personalmente no soy partidario de instalar cualquier addon de Firefox a la ligera, puesto que más de una vez ha habido sorpresitas indeseadas para los no precavidos. Sin embargo, creo que este complemento es ideal para todos aquellos que trasteamos muchas cosas con el navegador (junto con firebug y firecookie). Al contrario que estos dos últimos, este addon es muy probable que tenga mucho menor uso, por lo que yo recomendaria desactivarlo siempre que no se use.
Saludos, lipman
HOla,
Aprovechandome de tu buena voluntad te queria preguntar lo siguiente:
En esta linea de comando, por poner un ejemplo:
TAG POS=1 TYPE=SPAN ATTR=TXT:Entradasrecientes
Cómo puedo cambiar el “TAG POS= (UN numero entre 1 y 10 por decir algo)?
Gracias y saludos.
Pero cambiar para qué? Qué es lo que quieres hacer? Esa línea solo indica que estamos haciendo referecia a un Span cuyo contenido es “Entradasrecientes”
HOla quería saber si se puede establecer la variable TAB para hacer con ella un loop.
Es decir quiero que me ejecute una cosa en cada pestaña pero lo que no quiero es ir poniendo TAB=1
TAB=2
etc…
jejejeje casualidades de la vida que ya me ha salido !
de todas formas gracias por poner esto en tu pagina que me a ayudado bastante.
Un saludo.
Gracias a ti por comentar!
No lo he probado, pero supongo que habrás hecho un TAB T={{!loop}}
Un Saludo
Saludos amigo una pregunta, no entendi lo del loops, yo quiero cambiar el tiempo entre ejecucion del bucle ponerle que sea cada 30 segundos ya que se repite muy rapido y me sale error, además que se siga repitiendo, como tendria que programarle, gracias
Hola! Tengo una duda.. nose si seguiras entrando a ver esto, espero que si..
Quiero hacer un loop en un codigo.. que el codigo se repita la cantidad de veces que necesite.
El codigo es el siguiente:
VERSION BUILD=8032216
TAB T=1
TAB CLOSEALLOTHERS
URL GOTO=http://www.managerzone.tn.com.ar/?p=team&tid=441713
TAG POS=1 TYPE=B ATTR=TXT:Guestbook
TAG POS=1 TYPE=TEXTAREA FORM=NAME:writeForm ATTR=NAME:msg CONTENT=[img]httpimageshack.usaimg6519303venta2s.jpg[img]
TAG POS=2 TYPE=SPAN FORM=NAME:writeForm ATTR=TXT:Escribir
Yo necesito que se repita para varios usuarios, ya que esta pagina http://www.managerzone.tn.com.ar/?p=team&tid=441713 representa un usuario, el numero al final es lo que lo distingue de los demas. El codigo que te pase anda porque lo probe, pero para uno solo. Me gustaria que me expliques o me digas donde aprender a hacer un loop por ejemplo para X usuarios. Que yo cargue las paginas de internet referentes a cada usuarios y el coigo se ejecute automaticamente para cada uno de ellos. Espero haberme explicado bien.
Lei manuales pero todos estan en ingles y en ninguno se hace lo que quiero.
Desde ya muchas gracias!.
Hernan!