En la primera parte comentaba cómo pasar valores desde nuestra aplicación hacia la página web.
En esta ocasión haremos lo contrario, es decir, obtener el valor de algun elemento de la página.
La página de ejemplo que usaremos en esta ocasión será la de la famosa loteria colombiana de sistema de balotas "el baloto",cuya página web es www.baloto.com
La página web al cargar muestra en un rectangulo, los números ganadores ( seis ) las cuales muestro en color rojo en la siguiente imagen.Asi que lo que haremos es mostrar por medio de un msgbox cada uno de los números ganadores mostrados en la página.
Para ello abrimos un nuevo proyecto en visual basic .net, y al igual que el proyecto pasado agregamos un control webBrowser y un control button.
El webBrowser yo lo renombré como "web".
Vamos a configurar para que se cargue la página de gmail al cargar
nuestro formulario, o sea en el evento form_load, igual lo podiamos
hacer desde otro evento, al presionar un botón, etc.
Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
web.Navigate("www.baloto.com")
End Sub
Al hacer clic en el boton, el programa mostrará cada uno de los números reflejados en la página, para la página del ejemplo consultada a la fecha de hoy martes 11 de junio, los números eran el: 1,13,14,18,33 y 43.
Obviamente a ustedes les puede mostrar unos números distintos dependiendo de la fecha en que hagan la consulta a la página.
Agregamos el siguiente código en el evento clic del boton:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
MsgBox(web.Document.GetElementById("balota-tester").InnerText)
MsgBox(web.Document.GetElementById("t-balota-dos").InnerText)
MsgBox(web.Document.GetElementById("t-balota-tres").InnerText)
MsgBox(web.Document.GetElementById("t-balota-cuatro").InnerText)
MsgBox(web.Document.GetElementById("t-balota-cinco").InnerText)
MsgBox(web.Document.GetElementById("t-balota-seis").InnerText)
End Sub
MsgBox(web.Document.GetElementById("balota-tester").InnerText)
MsgBox(web.Document.GetElementById("t-balota-dos").InnerText)
MsgBox(web.Document.GetElementById("t-balota-tres").InnerText)
MsgBox(web.Document.GetElementById("t-balota-cuatro").InnerText)
MsgBox(web.Document.GetElementById("t-balota-cinco").InnerText)
MsgBox(web.Document.GetElementById("t-balota-seis").InnerText)
End Sub
El programa en ejecución lo muestro a continuación:
Recordemos que debemos conocer el nombre del id de cada elemento del cual deseamos obtener el valor.
Recuerden que el objetivo de esto es aprender a leer valores de una página web y pasarlos a nuestra aplicación, ya sea para mostrarlos en un label, textbox o cualquier control que queramos.
Les insto a que prueben con otras páginas web y obtengan algunos datos para mostrarlos en un control label. Espero haya sido de utilidad esta entrada y .... hasta la proxima.
No hay comentarios:
Publicar un comentario