PhotoShaman

парсер валют

Jun 5th, 2017
269
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.74 KB | None | 0 0
  1. private void button5_Click(object sender, EventArgs e)
  2.         {
  3.             try
  4.             {
  5.                 HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://finance.i.ua/converter/");
  6.                 Stream stream = request.GetResponse().GetResponseStream();
  7.                 string html = null;
  8.                 using (stream)
  9.                 {
  10.                     using (StreamReader reader = new StreamReader(stream, Encoding.GetEncoding(1251)))
  11.                     {
  12.                         html = reader.ReadToEnd();
  13.                     }
  14.                 }
  15.                 textBox9.Text = Regex.Replace(Regex.Match(GetDescription(html,
  16.                     "//body/div[2]/div[3]/div[1]/div[1]/div[2]/div[1]/div[1]/table[1]/tbody[1]/tr[1]/td[1]/span[1]/span[1]"),
  17.                     @"(?<=<span>)(.*)(?=</span>)").ToString(), "[.]", ",");
  18.                 textBox10.Text = Regex.Replace(Regex.Match(GetDescription(html,
  19.                     "//body/div[2]/div[3]/div[1]/div[1]/div[2]/div[1]/div[1]/table[1]/tbody[1]/tr[1]/td[2]/span[1]/span[1]"),
  20.                     @"(?<=<span>)(.*)(?=</span>)").ToString(), "[.]", ",");
  21.             }
  22.             catch (WebException)
  23.             {
  24.                 MessageBox.Show("Не удалось подключиться к сайту", "Ошибка парсера курсов валют.");
  25.             }
  26.         }
  27.  
  28.         public string GetDescription(string html, string address)
  29.         {
  30.             HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
  31.             doc.OptionFixNestedTags = true;
  32.             doc.Load(new StringReader(html));
  33.             HtmlNode node = doc.DocumentNode.SelectSingleNode(address);
  34.             return node.OuterHtml;
  35.         }
Advertisement
Add Comment
Please, Sign In to add comment