C#にてWebのHTMLを取得する方法は、幾つかありますので説明します。
サンプルプログラムとして、Form上にボタンとテキストボックスを配置します。TextBoxはMultilineをtrueにします。(データ表示用)
WebClient使用での方法
private void button1_Click(object sender, EventArgs e) { WebClient wc = new WebClient(); try { textBox1.Text += wc.DownloadString("http://www.microsoft.com"); } catch (WebException ex) { textBox1.Text += ex.Message; } }
HttpWebRequest使用での方法
private void button2_Click(object sender, EventArgs e) { System.Net.HttpWebRequest wr = (System.Net.HttpWebRequest)System.Net.WebRequest.Create("http://www.microsoft.com"); System.Net.HttpWebResponse res = (System.Net.HttpWebResponse)wr.GetResponse(); System.IO.Stream st = res.GetResponseStream(); System.IO.StreamReader sr = new System.IO.StreamReader(st, System.Text.Encoding.UTF8); string html = sr.ReadToEnd(); sr.Close(); st.Close(); res.Close(); textBox1.Text = html; }
WebRequest使用での方法
private void button3_Click(object sender, EventArgs e) { System.Net.WebRequest wr = System.Net.WebRequest.Create("http://www.microsoft.com"); System.Net.WebResponse res = wr.GetResponse(); System.IO.Stream st = res.GetResponseStream(); System.IO.StreamReader sr = new System.IO.StreamReader(st, System.Text.Encoding.UTF8); string html = sr.ReadToEnd(); sr.Close(); st.Close(); res.Close(); textBox1.Text = html; }