网页内容读取三种方法的区别[未完]

来源:互联网 发布:javascript实例精通 编辑:程序博客网 时间:2024/05/17 08:13
       //WebClient        public static string GetPageContentByWebClient(string url)        {            string content = string.Empty;            try            {                WebClient client = new WebClient();                client.Credentials = CredentialCache.DefaultCredentials;                byte[] buffer = client.DownloadData(url);                content = Encoding.Default.GetString(buffer);            }            catch (WebException ex)            {            }            return content;        }        //WebBrowser        public static string GetPageContentByWebBrowser(string url)        {            StringBuilder content = new StringBuilder();            try            {                WebBrowser browser = new WebBrowser();                browser.Navigate(url);                browser.DocumentCompleted += delegate                {                    HtmlElementCollection elts = browser.Document.GetElementsByTagName("html");                    foreach (HtmlElement elt in elts)                    {                        content.Append(elt.OuterHtml);                        break;                    }                };            }            catch (WebException ex)            {            }            return content.ToString();        }        //WebRequest/WebResponse        public static string GetPageContentByWebRequestResponse(string url)        {            string content = string.Empty;            try            {                HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);                using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())                {                    using (Stream stream = response.GetResponseStream())                    {                        using (StreamReader reader = new StreamReader(stream,Encoding.Default))                        {                            content = reader.ReadToEnd();                            response.Close();                        }                    }                }            }            catch (WebException ex)            {            }            return content.ToString();        }


原创粉丝点击