[C#]GetHtmlSource

关键代码:

        /// <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;

        }

.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, "Courier New", courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }测试代码:

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

测试效果:

希望有所帮助!

.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, "Courier New", courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }

时间: 2024-12-09 07:48:19

[C#]GetHtmlSource的相关文章

使用高德地图api导入行政区域及经纬度

高德地图提供了行政区域及经纬度查询api 参考如下链接 高德地图行政区域api 具体实现代码如下 package com.test; import java.util.HashMap;import java.util.Map; import org.json.JSONArray;import org.json.JSONObject; import jvc.util.DBUtils;import jvc.util.NetUtils;import jvc.util.db.Insert; public

Selenium 使用介绍

Selenium 是 thoughtworks公司的一个集成测试的强大工具.最近参与了一个系统移植的项目,正好用到这个工具, 把一些使用心得分享给大家,希望大家能多多使用这样的强大的,免费的工具,来保证我们的质量. Selenium 的文档现存的不少,不过都太简单了.使用Selenium的时候,我更多的是直接去看API文档,好在API不错, 一个一个看,就能找到所需要的 :-)   官方网站:http://www.openqa.org/selenium/ 好,下面进入正题! 一.Selenium

thinkphp开发规范

1.编写目的 ????为了更好的提高技术部的工作效率,保证开发的有效性和合理性,并可最大程度的提高程序代码的可读性和可重复利用性,指定此规范.开发团队根据自己的实际情况,可以对本规范进行补充或裁减. 1.程序员可以了解任何代码,弄清程序的状况: 2.新人可以很快的适应环境: 3.防止新接触PHP的人出于节省时间的需要,自创一套风格并养成终生的习惯: 4.防止新接触PHP的人一次次的犯同样的错误: 5.在一致的环境下,人们可以减少犯错的机会: 6.程序员们有了一致的敌人: 2.整体要求 ????技

JAVA学习笔记(一):一个小爬虫的例子

1.import java.io.*;   java.io.*不是一个文件,而是一组类.它是在java.io包里的所有类,*是通配符,比如a*.txt代表的就是以a开头的所有txt文件,“?”是单个词的通配符,比如a?.txt代表的就是以a开头而且名字只有两个字的txt文件 import的作用是:在你写一个类的时候.里面用到了其他的类,而用到的这个类和你现在写的这个类不是同一个包里,就需要导入那个类的全名 2.类似于C语言中int main() 的作用 public class main { p

C# 百度搜索结果xpath分析

using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Net; using System.Text; using System.Threading.Tasks; using HtmlAgilityPack; namespace xpathGet { class Program { #region webclient创建 public class WebCli

java 使用正则表达式从网页上提取网站标题

如何从网页上抓取有价值的东西?看懂了下面的程序(非常简单),想从网页上抓取什么信息(标题.内容.Email.价格等)就能抓取什么信息. package catchhtml; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.net.MalformedURLException; import java.net.URL; import jav

C#获取网页HTML源码实例

本文实例讲述了C#获取网页HTML源码的方法,分享给大家供大家参考.具体方法如下: 关键代码如下: 代码如下: /// <summary> /// 获取网页HTML源码 /// </summary> /// <param name="url">链接 eg:http://www.baidu.com/ </param> /// <param name="charset">编码 eg:Encoding.UTF8&

php 代码编写规范

1 编写目的为了更好的提高技术部的工作效率,保证开发的有效性和合理性,并可最大程度的提高程序代码的可读性和可重复利用性,指定此规范.开发团队根据自己的实际情况,可以对本规范进行补充或裁减. 2 整体要求技术部php开发规范将参照PEAR的规范,基本采用PEAR指定的规范,在其基础上增加.修改或删除部分适合具体开发环境的规范.本规范只针对PHP开发过程中编码的规范,对于PHP开发项目中文件.目录.数据库等方面的规范,将不重点涉及.本规范包含了PHP开发时程序编码中命名规范.代码缩进规则.控制结构.

httpclient下载网页源码---java基础爬虫

有关httpclient: HttpClient相比传统JDK自带的URLConnection,增加了易用性和灵活性,它不仅使客户端发送Http请求变得容易,而且也方便开发人员测试接口(基于Http协议的),提高了开发的效率,也方便提高代码的健壮性.因此熟练掌握HttpClient是很重要的必修内容,掌握HttpClient后,相信对于Http协议的了解会更加深入. org.apache.commons.httpclient.HttpClient与org.apache.http.client.H