C#获取网页HTML源码实例

 更新时间:2014年10月12日 16:31:04   投稿:shichen2014  
这篇文章主要介绍了C#获取网页HTML源码的方法,是非常实用的技巧,需要的朋友可以参考下

本文实例讲述了C#获取网页HTML源码的方法,分享给大家供大家参考。具体方法如下:

关键代码如下:

复制代码 代码如下:
/// <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);
}

测试效果如下图所示:

希望本文所述对大家的C#程序设计有所帮助

相关文章

  • C#中string和StingBuilder内存中的区别实例分析

    C#中string和StingBuilder内存中的区别实例分析

    这篇文章主要介绍了C#中string和StingBuilder内存中的区别,以实例形式演示了二者在内存中的不同之处,需要的朋友可以参考下
    2014-09-09
  • c# 使用异步编程的方法

    c# 使用异步编程的方法

    这篇文章主要介绍了c# 使用异步编程的方法,文中讲解非常细致,帮助大家更好的理解c# 异步编程,感兴趣的朋友可以了解下
    2020-08-08
  • 日常收集C#接口知识(知识全面)

    日常收集C#接口知识(知识全面)

    本文分为七章节给大家介绍c#接口知识,内容比较详细,特此分享脚本之家平台,供大家参考
    2016-01-01
  • C#的自定义语法糖的使用详解

    C#的自定义语法糖的使用详解

    这篇文章主要介绍了C#的自定义语法糖的使用,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-05-05
  • 访问修饰符(C# 编程指南)

    访问修饰符(C# 编程指南)

    所有类型和类型成员都具有可访问性级别,用来控制是否可以在您程序集的其他代码中或其他程序集中使用它们。您在声明类型或成员时使用以下访问修饰符之一来指定其可访问性
    2011-02-02
  • C#实现计算一个点围绕另一个点旋转指定弧度后坐标值的方法

    C#实现计算一个点围绕另一个点旋转指定弧度后坐标值的方法

    这篇文章主要介绍了C#实现计算一个点围绕另一个点旋转指定弧度后坐标值的方法,涉及C#针对坐标的数学运算相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-08-08
  • C#创建线程带参数的方法

    C#创建线程带参数的方法

    本文给大家介绍C#创建线程带参数的方法,包括无参数线程的创建,带一个参数线程的创建及带两个及以上参数线程的创建,非常不错,具有参考借鉴价值,感兴趣的朋友一起看下吧
    2016-07-07
  • C#中Datetimepicker出现问题的解决方法

    C#中Datetimepicker出现问题的解决方法

    这篇文章主要给大家介绍了关于C#中Datetimepicker出现问题的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-11-11
  • Unity3D实现物体旋转缩放移动效果

    Unity3D实现物体旋转缩放移动效果

    这篇文章主要为大家详细介绍了Unity3D实现物体旋转缩放移动效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-02-02
  • C#使用GDI画圆的方法

    C#使用GDI画圆的方法

    这篇文章主要介绍了C#使用GDI画圆的方法,涉及C#使用GDI绘图的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-04-04

最新评论