博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
HtmlWeb类
阅读量:5947 次
发布时间:2019-06-19

本文共 3411 字,大约阅读时间需要 11 分钟。

HtmlWeb类是一个从网络上获取一个HTML文档的类,其提供的功能大多是基于完成此需求出发。现在来来HtmlWeb类有哪些方法以及属性。

  一、属性

bool AutoDetectEncoding { get; set; }     获取或设置一个值,该值指示是否必须将自动检测文档编码。

bool CacheOnly { get; set; }          获取或设置一个值,该值指示是否只从缓存中获取的文档。如果此设置为 true 并且文档未找到在缓存中,并不会加载。
string CachePath { get; set; }          获取或设置缓存路径。如果为 null,则将使用无缓存的机制。
bool FromCache { get; }            获取一个值,该值指示是否从缓存中检索的最后一次加载的文档。
Encoding OverrideEncoding { get; set; }    获取或设置用于重写从任何 web 请求的响应流的编码。
int RequestDuration { get; }           获取上次请求持续时间,以毫秒为单位。 
Uri ResponseUri { get; }            获取的互联网资源的实际响应请求的 URI。
HttpStatusCode StatusCode { get; }      获取上次请求状态。
int StreamBufferSize { get; set; }       获取或设置用于内存操作的缓冲区的大小。
bool UseCookies { get; set; }          获取或设置一个值,该值指示是否将存储的 cookie。
string UserAgent { get; set; }         获取或设置任何 webrequest 上发送的用户代理 HTTP 1.1 标头
bool UsingCache { get; set; }          获取或设置一个值,指示是否使用的缓存机制。

二、方法(删减了不少重载)

object CreateInstance(string url, Type type);   从指定的互联网资源创建给定类型的实例。

void Get(string url, string path);          从互联网资源获取 HTML 文档并将其保存到指定的文件。
string GetCachePath(Uri uri);            获取指定的 url 缓存文件路径。 
static string GetContentTypeForExtension(string extension, string def);      获取给定的路径扩展的 MIME 内容类型。 
static string GetExtensionForContentType(string contentType, string def);      获取给定的 MIME 内容类型的路径扩展。
HtmlDocument Load(string url);          从一个网址加载代码并返回一个HtmlDocument
void LoadHtmlAsXml(string htmlUrl, string xsltUrl, XsltArgumentList xsltArgs, XmlTextWriter writer);   从互联网资源加载 HTML 文档,并将其保存到指定的 XmlTextWriter。

代码示例:由于对HTTP方面的很多知识尚不熟悉,因此先跳过,以后再补充那些不懂的。

static void Main(string[] args)        {            HtmlWeb web = new HtmlWeb();            Console.WriteLine(web.AutoDetectEncoding);  //输出 True            Console.WriteLine(web.CacheOnly);   //输出 False               Console.WriteLine(web.CachePath);   //输出 空白(啥都不输出)            Console.WriteLine(web.OverrideEncoding);    //输出  空白            Console.WriteLine(web.RequestDuration);     //输出 0 上次持续请求时间为0?            Console.WriteLine(web.ResponseUri);         //输出 空白            Console.WriteLine(web.StatusCode);          //输出 Ok 就是 200了,枚举来的            Console.WriteLine(web.StreamBufferSize);    //输出 1024            Console.WriteLine(web.UseCookies);          //输出 False            Console.WriteLine(web.UserAgent);           //输出 FireFox...................................            Console.WriteLine(web.UsingCache);          //输出 False            HtmlDocument doc = web.Load("http://www.juedui100.com");            Console.WriteLine(doc.DocumentNode.SelectSingleNode("//title").InnerText);  //输出 交友_征婚_找对象,上绝对100婚恋交友网            Uri uri = new Uri("http://www.juedui100.com");            web.CachePath = @"D:\juedui100\";            web.UsingCache = true;      //要先开启使用缓存,下面的方法才能够使用            Console.WriteLine(web.GetCachePath(uri));            web.Get("http://www.juedui100.com",@"D:\juedui100.html");             //二、方法(删减了不少重载)            //object CreateInstance(string url, Type type);   从指定的互联网资源创建给定类型的实例。            //static string GetContentTypeForExtension(string extension, string def);            获取给定的路径扩展的 MIME 内容类型。             //static string GetExtensionForContentType(string contentType, string def);            获取给定的 MIME 内容类型的路径扩展。            //void LoadHtmlAsXml(string htmlUrl, string xsltUrl, XsltArgumentList xsltArgs, XmlTextWriter writer);      从互联网资源加载 HTML 文档,并将其保存到指定的 XmlTextWriter。            Console.ReadKey();        }

 

转载地址:http://rdbxx.baihongyu.com/

你可能感兴趣的文章
跑带宽度多少合适_跑步机选购跑带要多宽,你的身体早就告诉你了
查看>>
广平县北方计算机第一届PS设计大赛
查看>>
深入理解Java的接口和抽象类
查看>>
java与xml
查看>>
Javascript异步数据的同步处理方法
查看>>
iis6 zencart1.39 伪静态规则
查看>>
SQL Server代理(3/12):代理警报和操作员
查看>>
Linux备份ifcfg-eth0文件导致的网络故障问题
查看>>
2018年尾总结——稳中成长
查看>>
JFreeChart开发_用JFreeChart增强JSP报表的用户体验
查看>>
度量时间差
查看>>
通过jsp请求Servlet来操作HBASE
查看>>
crontab执行shell脚本日志中出现乱码
查看>>
Shell编程基础
查看>>
Shell之Sed常用用法
查看>>
3.1
查看>>
校验表单如何摆脱 if else ?
查看>>
JS敏感信息泄露:不容忽视的WEB漏洞
查看>>
分布式memcached服务器代理magent安装配置(CentOS6.6)
查看>>
Create Volume 操作(Part III) - 每天5分钟玩转 OpenStack(52)
查看>>