[ Foro de C# ]

Cotización Dólar c# win forms

01-Jul-2015 16:38
Invitado (anabpao)
2 Respuestas

buenos días mi aplicación windows form necesita informar diariamente el valor del dolar actualizado y almacenarlo en la base de datos, y para ello debo capturar ese string desde el sitio web del banco de la nación Argentina (http://www.bna.com.ar/) que mantiene la información al día.
Como puedo hacer? he leido bastante sobre el tema en los foros pero el unico ejemplo claro que vi de parsear la pagina y obtener valores está en php y no se tampoco como lo debería convertir para que funcione en c#
Desde ya muchas gracias


01-Jul-2015 22:57
Daniel Segura (+2)

Podrías descargar toda la información de la pagina, y analizarla para obtener la información que necesitas. De esta manera siempre estarías suponiendo que el formato de la pagina no va a cambiar.
Una forma mas elegante, es consumir un servicio web, que normalmente te devolverá un JSON con la información que necesites. Te dejo un ejemplo que podría servirte.

https://currencylayer.com/documentation


04-Jul-2015 22:15
Nacho Cabanes (+84)

Puedes analizar toda la página web usando un "WebClient", y descargando línea a línea (también podrías descargar todo en n único paso), para analizar las líneas y ver cuál contiene el texto que sepas que te interesa.


using System;
using System.IO;
using System.Net;

class AnalizarWeb
{
    static void Main(string[] args)
    {
        WebClient cliente = new WebClient();
        Stream conexion = cliente.OpenRead("http://www.bna.com.ar/");
        StreamReader lector = new StreamReader(conexion);
        string linea = lector.ReadLine();
        while(linea != null)
        {
            // Analizar si la línea contiene el texto que buscas
            linea = lector.ReadLine();
        }
        conexion.Close();
    }
}


 






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)