C#获取网页内容

来源:互联网 发布:海康200万网络摄像机 编辑:程序博客网 时间:2024/06/06 12:44
using System.Net;
using System.IO;
using System.Text;


       
            
//方法一:
            
// Create a request for the URL.         
            WebRequest request = WebRequest.Create("http://www.hao123.com");
            
// If required by the server, set the credentials.
            request.Credentials = CredentialCache.DefaultCredentials;
            
// Get the response.
            HttpWebResponse response = (HttpWebResponse)request.GetResponse();
            
// Display the status.
            Response.Write(response.StatusDescription);
            
// Get the stream containing content returned by the server.
            Stream dataStream = response.GetResponseStream();
            
// Open the stream using a StreamReader for easy access.
            StreamReader reader = new StreamReader(dataStream,Encoding.Default);
            
// Read the content.
            string responseFromServer = reader.ReadToEnd();
            
// Display the content.
            Response.Write(responseFromServer);
            
// Cleanup the streams and the response.
            reader.Close();
            dataStream.Close();
            response.Close();
         

            
//方法二:
            WebClient client = new WebClient();

            
// Add a user agent header in case the 
            
// requested URI contains a query.

            client.Headers.Add(
"user-agent""Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.0.3705;)");

            Stream data 
= client.OpenRead("http://www.hao123.com");
            StreamReader reader 
= new StreamReader(data,Encoding.Default);
            
string s = reader.ReadToEnd();
            Response.Write(s);
            data.Close();
            reader.Close();
            
            
//方法三:
             WebClient client = new WebClient();
            
//client.DownloadFile("http://www.hao123.com","123.htm");
            string reply = client.DownloadString("http://www.hao123.com");
            Response.Write(reply);