Vamos con las funciones _IE()

Tus preguntas. Algoritmos o Grupos de Comandos formando Programas Escripts.
Responder
chechu
Aprendiz de Mago
Mensajes: 32
Registrado: 23 Nov 2009, 18:34

Vamos con las funciones _IE()

Mensaje por chechu »

Hola a todos,

estoy estudiando las funciones _IE() pero me que quedado atascado en las referencias que se hacen a objetos en una pagina web.

Pongo 2 codigos encontrados en el foro los 2 creados por chefito que me sirven para postear la duda.

Este script saca un mensaje cuando se pulsa el botón "Bucar en Google". Lo que no entiendo es como sabemos que la referencia a ese botón es "btnG" ¿?¿?

$oIE = _IECreate ("www.google.es") ;cargo la página web de google.
$obtnBuscar = _IEGetObjById ($oIE, "btnG") ;obtengo el objeto button (botón) que pone Buscar en google.
_IEHeadInsertEventScript ($oIE, "btnG", "onclick", "alert('Has pulsado el botón ""Buscar con google""!!!');") ;inserto en el evento onclick del botón una alerta


Otro ejemplo que sirve para poner usuario y contraseña en una pagina web (en este caso el portal wap de lacaixa.com)

#include <IE.au3>

$IeObj=_IECreate("https://loc12.lacaixa.es/WAP/SPDServlet ... goff02.jsp")
$ieform=_IEFormGetCollection($IeObj,0)
$InpUs=_IEGetObjByName($ieform, "E")
$InpPass=_IEGetObjByName($ieform, "B")
_IeFormElementSetValue($InpUs, "usuario")
_IeFormElementSetValue($InpPass, "contraseña")
_IEFormSubmit($ieform)
_IeLoadWait($IeObj)

Tampoco entiendo de donde sale la referencia de los box indicados :smt017

$InpUs=_IEGetObjByName($ieform, "E")
$InpPass=_IEGetObjByName($ieform, "B")

Supongo que habrá algún modo de listar los objetos de una web para referenciarlos, pero no doy con ello ¿Podéis ayudarme? Pleaseeeee, estoy deseperado :smt022

Si neceistáis cualquier información adicional, decirme

Muchas Gracias a todos
Un saludo,
Avatar de Usuario
Chefito
Profesional del Autoit
Mensajes: 2035
Registrado: 21 Feb 2008, 18:42
Ubicación: Albacete/Cuenca (España)

Re: Vamos con las funciones _IE()

Mensaje por Chefito »

Lo primero decirte que si te vas a meter en cosas de estas es bueno que aprendas dhtml.

La referencia a estos objetos se realiza gracias a las funciónes _IE..... . A estas funciones se le pasan los parámetros adecuados. Ejemplos: A _IEGetObjById se le tiene que pasar como 2º parámetro el Id (Identificador) del objeto, y a _IEGetObjByName el Name (nombre) del objeto.

Como se sabe esto? Pues viendo el código html de las páginas con las que quieres trabajar. Si te fijas en este código verás que estos objetos tienes unas propiedades para identificarlos (no siempre, pero lo normal es que sí). En los ejemplos estas propiedades se llaman así: ID y Name.

Lo dicho, busca en el código estos valores y verás donde están.

Saludos.
Cita vista en algún lugar de la red: En este mundo hay 10 tipos de personas, los que saben binario y los que no ;).
chechu
Aprendiz de Mago
Mensajes: 32
Registrado: 23 Nov 2009, 18:34

Re: Vamos con las funciones _IE()

Mensaje por chechu »

Gracias por la respuesta chefito y por la rapidez. Efectivamente ya veo las etiquetas.

Para el ejemplo de lacaixa veo name="E" que supongo es al que hace referencia.

Se puede crear algún código que permita de un vistazo listar todos los names de una web?

Como tú has dicho el Html no es mi fuerte (tengo q ponerme con ello algún día) y busco una manera de ahorrar tiempo.

Gracias por el aporte y enhorabuena por la web

Edito para decir que tal vez lo mejor sea meter el código html en un editor y desde ahí ver la estructura de la web...
Responder