·您现在的位置: 云翼网络 >> 文章中心 >> 网站建设 >> 网站建设开发 >> ASP.NET网站开发 >> [C#]GetHtmlSource

[C#]GetHtmlSource

作者:佚名      ASP.NET网站开发编辑:admin      更新时间:2022-07-23

关键代码:

        /// <summary>
        /// 获取网页HTML源码
        /// </summary>
        /// <param name="url">链接 eg:http://www.baidu.com/ </param>
        /// <param name="charset">编码 eg:Encoding.UTF8</param>
        /// <returns>HTML源码</returns>
        public static string GetHtmlSource(string url, Encoding charset)
        {

            string _html = string.Empty;
            try
            {
                HttpWebRequest _request = (HttpWebRequest)WebRequest.Create(url);
                HttpWebResponse _response = (HttpWebResponse)_request.GetResponse();
                using (Stream _stream = _response.GetResponseStream())
                {
                    using (StreamReader _reader = new StreamReader(_stream, charset))
                    {
                        _html = _reader.ReadToEnd();
                    }
                }
            }
            catch (WebException ex)
            {
                using (StreamReader sr = new StreamReader(ex.Response.GetResponseStream()))
                {
                    _html = sr.ReadToEnd();
                }
            }
            catch (Exception ex)
            {
                _html = ex.Message;
            }
            return _html;

        }

测试代码:

        public static void GetHtmlSourceTest()
        {
            string _url = "http://www.baidu.com/";
            string _htmlSource = HttpWebRequestUtilsV2.GetHtmlSource(_url, Encoding.UTF8);
            Console.WriteLine(_htmlSource);
        }

测试效果:

image

希望有所帮助!微笑