Descargar y mostrar el contenido de una página web

2055 vistas

Vamos a usar las clases HttpWebRequest, HttpWebResponse que encapsulan la comunicación socket del protocolo HTTP. Luego usaremos la clase StreamReader para leer el flujo de la respuesta

Namespaces a usar



csharp
  1. using System.Net;
  2. using System.IO;



El siguiente código usa un Form con un TextBox (textBox1), un RichTextBox (richTextBox1) y un Button (button1).



csharp
  1. private void button1_Click(object sender, System.EventArgs e)
  2. {
  3.     HttpWebResponse HttpWResponse = null;
  4.     StreamReader sr = null;
  5.     try
  6.     {
  7.         HttpWebRequest HttpWRequest = (HttpWebRequest)WebRequest.Create(textBox1.Text);
  8.         HttpWResponse = (HttpWebResponse)HttpWRequest.GetResponse();
  9.         sr = new StreamReader(HttpWResponse.GetResponseStream());
  10.         richTextBox1.Text= sr.ReadToEnd();
  11.     }
  12.     catch (Exception ex)
  13.     {
  14.         MessageBox.Show(ex.Message);               
  15.     }
  16.     finally
  17.     {
  18.         if (HttpWResponse != null)
  19.             HttpWResponse.Close();
  20.         if (sr != null)
  21.             sr.Close();
  22.     }
  23. }