Парсим курс валюты на C# | Блог программиста C# .Net, C++

usd-1798883

Сегодня будем парсить курс валюты. Информацию курса Доллара США по отношению к рублю будем брать с официального сайта Центрального банка Российской Федерации. После изучения сайта, я решил, что лучше будет брать информацию с облегчённой страницы, которая предназначена для печати. Адрес:

http://www.cbr.ru/currency_base/D_print.aspx?date_req=08.03.2010

Для получения этой страницы, сначала нужно определить текущее число:

DateTime ToDay = DateTime.Now;
Console.WriteLine(ToDay.Date.ToShortDateString());

После того, как сформировали адрес, нужно выполнить простейший HTTP-запрос:

HttpWebRequest myHttpWebRequest = (HttpWebRequest)HttpWebRequest.Create(url);
HttpWebResponse myHttpWebResponse =(HttpWebResponse)myHttpWebRequest.GetResponse();
StreamReader myStreamReader = new StreamReader(myHttpWebResponse.GetResponseStream());

Экземпляр класса HttpWebResponse получает результат выполнения GET-запроса к серверу. StreamReade принимает данные из HttpWebResponse, и с этими данными нам и придётся работать. Поподробнее о HttpWebResponse и HttpWebRequest можно почитать на RSDN.ru Взаимодействие с другими сайтами через HTTP. В myStreamReader.ReadToEnd() мы получим HTML код сайта.

В нём нам нужно выдернуть строки в которых и содержится курс валюты.

Выдёргивать будем через Регулярные выражения:

string pattern = "Доллар США\r\n
(.*)

«; Match match = Regex.Match(html, pattern);

В match.Groups[1].ToString() и будет наш курс.

Вот так вот всё просто. В следующей статье напишу небольшой Парсер с использованием Авторизацией, сохранении Cookies.

Скачать исходник примера unknown-3345376  Парсер USD (1.9 Кб, 1,540 скачиваний)

google_bmarks-7421563 bobrdobr-5807543 delicious-7065922 technorati-6049458 linkstore-8370952 news2-ru-2231523 rumark-4499087 memori-3437597 moemesto-8329073 Случайные посты:

Запись опубликована в рубрике Без рубрики. Добавьте в закладки постоянную ссылку.