C#用HttpWebRequest通过代理服务器验证后抓取网页内容

string urlStr = "http://www.domain.com";                             //設定要獲取的地址
HttpWebRequest hwr = (HttpWebRequest)HttpWebRequest.Create(urlStr);     //建立HttpWebRequest對象
hwr.Timeout = 60000;                                                 //定義服務器超時時間
WebProxy proxy = new WebProxy();                                     //定義一個網關對象
proxy.Address = new Uri("http://proxy.domain.com:3128");             //網關服務器:端口
proxy.Credentials = new NetworkCredential("f3210316", "6978233");     //用戶名,密碼
hwr.UseDefaultCredentials = true;                                     //啟用網關認証
hwr.Proxy = proxy;                                                     //設置網關
HttpWebResponse hwrs = (HttpWebResponse)hwr.GetResponse();             //取得回應
Stream s = hwrs.GetResponseStream();                                 //得到回應的流對象
StreamReader sr = new StreamReader(s, Encoding.UTF8);                 //以UTF-8編碼讀取流
StringBuilder content = new StringBuilder();                         //
while (sr.Peek() != -1)                                                 //每次讀取一行,直到
{                                                                     //下一個字節沒有內容
     content.Append(sr.ReadLine()+"\r\n");                             //返回為止
}                                                                     //

return content.ToString() ;    

                                         //返回得到的字符串

posted on 2010-03-11 18:42  意扬  阅读(303)  评论(0编辑  收藏  举报

导航