.NET 4.x скачать xml файл из сети, с условием что используется прокси сервер - C#
Формулировка задачи:
Добрый день,
раньше пользовался парсером курса валют с сайта ЦБ:
но теперь, уходит очень много времени на отправку-получение HTML кода с сайта,
иногда программа висит по секунд 40.
нашел инфу где написано что ЦБ имеет еще и такой линк http://www.cbr.ru/scripts/XML_daily.asp
этот XML файл весит почти в 2 раза меньше чем страничка http.
Моя задумка состоит в том чтобы этот XML файл сохранить и затем уже оттуда спарсить нужные мне курсы валют, нашел в сети такой фрагмент:
но тут возникает проблема с тем что для доступа к интернету на своем ноуте я использую прокси сервер, почитал на MSDN про WebClient.Proxy, но не понял как его прицепить к Webclieny,
буду признателен если кто-нибудь покажет на рабочем примере:
// Текущая дата
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();
// Формируем адрес сайта
// [url]http://www.cbr.ru/currency_base/D_print.aspx?date_req=07.03.2010[/url]
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);
string a = match.Groups[1].ToString();
textBox1.Text = Convert.ToString(Convert.ToDouble(a) / 10); WebClient wc = new WebClient();
Uri ui = new Uri("http://www.mypage.com/images/1.jpg");
string path = @"C:/" + ui.Segments[2];
wc.DownloadFileAsync(ui, path);Решение задачи: «.NET 4.x скачать xml файл из сети, с условием что используется прокси сервер»
textual
Листинг программы
proxy.Credentials=new NetworkCredential("login","password");