Парсер курсов валют

      Простой пример, демонстрирует, как можно получить информацию о курсах валют из Интернета и распарсить ее.
Информация о курсах валют берется с официального сайта Банка России.


using System;
using System.IO;
using System.Text;
using System.Text.RegularExpressions;
using System.Net;

namespace USD
{
  class Program
  {
    static void Main(string[] args)
    {
      // Текущая дата
      string data = string.Empty;
      // Адрес сайта с курсом валюты
      string url = "http://www.cbr.ru/currency_base/D_print.aspx?date_req=";
      // HTML сайта с курсом валюты
      string html = string.Empty;
      // Регулярное выражение
      string pattern = "Доллар США\r\n(.*)";


      // Определяем текущую дату
      DateTime today = DateTime.Now;
      data = today.Date.ToShortDateString();


      // Формируем адрес сайта
      // http://www.cbr.ru/currency_base/D_print.aspx?date_req=07.03.2010
      url += data;


      // Отправляем GET запрос и получаем в ответ HTML-код сайта с курсом валюты
      HttpWebRequest myHttpWebRequest = (HttpWebRequest)HttpWebRequest.Create(url);
      HttpWebResponse myHttpWebResponse = (HttpWebResponse)myHttpWebRequest.GetResponse();
      StreamReader myStreamReader = new StreamReader(myHttpWebResponse.GetResponseStream());
      html = myStreamReader.ReadToEnd();

      
      // Вытаскиваем из HTML-кода нужные данные
      Match match = Regex.Match(html, pattern);


      Console.WriteLine("Курс Доллара США на {0} равен {1} руб.", data, match.Groups[1].ToString());
      Console.ReadLine();
    }
  }
}

Комментариев нет:

Отправить комментарий

Большая просьба, не писать в комментариях всякую ерунду не по теме!