Добро пожаловать, Гость
Логин: Пароль: Запомнить меня
  • Страница:
  • 1

ТЕМА:

C# - Парсер курсов валют из HTML (с официального сайта Банка России) 4 года 8 мес. назад #199

  • Олег Коровяков
  • Олег Коровяков аватар Автор темы
  • Не в сети
  • Автор сайта
  • Автор сайта
  • Сообщений: 280
  • Репутация: 1
  • Спасибо получено: 1
Простой пример, демонстрирует, как можно получить информацию о курсах валют из Интернета и распарсить ее.
Информация о курсах валют берется с официального сайта Банка России.



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 = "Доллар США</td>\r\n<td align=\"right\">(.*)</td>";


            // Определяем текущую дату
            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();
        }
    }
}
Вложения:

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Последнее редактирование: от Олег Коровяков.
  • Страница:
  • 1
Модераторы: Дмитрий

О сайте

Строительство индивидуальных домов из лёгкого самана - опыт, советы, методика строительства и подробные инструкции. А также возможность применения альтернативных источников энергии.


Контакты

08340. ул.Салютная 17. с.Гнедын.
Киевская обл. Украина.

+38 067 492 4124.
+38 095 065 8860.

info@okwood.com.ua
www.okwood.com.ua

Местоположения


8PM2+7R Гнедин, Kyiv Oblast