求C# HtmlAgilityPack用法的完整例子。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了求C# HtmlAgilityPack用法的完整例子。相关的知识,希望对你有一定的参考价值。

如果能有完整的文件让我能够运行学习最好,要是没有的话,请大牛们帮我给下详细步骤。大牛们帮帮忙吧~~~

1.htmlAgilityPack是一个开源的解析HTML元素的类库,最大的特点是可以通过XPath来解析HMTL,如果您以前用C#操作过XML,那么使用起HtmlAgilityPack也会得心应手。
下面以一个简单的例子来介绍下HtmlAgilityPack的使用,对于Asp.Net程序开发的网站要做模拟登录的时候,除了要知道用户名文本框和密码文本框的name属性值外,还需要知道页面的__VIEWSTATE、__EVENTVALIDATION这两个隐藏控件的值,以及提交按钮的name属性,下面看看怎样使用HtmlAgilityPack来获得这个额外的值。

2.例程:

protected void btnHtml_Click(object sender, EventArgs e)
        
            if (tbUrl.Text.Length > 0)
            
                HtmlWeb htmlWeb = new HtmlWeb();
                HtmlDocument htmlDoc = htmlWeb.Load(this.tbUrl.Text);
                HtmlNode htmlNode = htmlDoc.DocumentNode.SelectSingleNode("//input[@id='__VIEWSTATE']");
                string viewStateValue = htmlNode.Attributes["value"].Value;
                htmlNode = htmlDoc.DocumentNode.SelectSingleNode("//input[@id='__EVENTVALIDATION']");
                string eventValidation = htmlNode.Attributes["value"].Value;
                htmlNode = htmlDoc.DocumentNode.SelectSingleNode("//input[@type='submit']");
                string submitName = htmlNode.Attributes["name"].Value;
                tbViewState.Text = viewStateValue;
                tbEventValidation.Text = eventValidation;
                tbSubmitName.Text = submitName;
            
        

参考技术A public void English()

Console.WriteLine("hello,sir");

public void Chinaese()

Console.WriteLine("你好,先生");

public enum Lanaguage

Chinaese,English

public void Make(Language lan)

switch(lan)

case Language.English:
English();
break;
case Language.Chinaese:
Chinaese();
break;


static void Main(string[] args)

Make(Language.Chinaese);

以上是关于求C# HtmlAgilityPack用法的完整例子。的主要内容,如果未能解决你的问题,请参考以下文章

可以在 C# 的 HtmlAgilityPack 中使用 LINQ 吗?

C# HTML解析工具HtmlAgilityPack使用实例

c# 爬虫 -ChromeDriver+HtmlAgilityPack爬取比赛实时比分

如何使用 C# 在 Visual Studio 2010 中使用正则表达式或 HTMLAgilityPack 抓取 HTML 页面的特定部分?

C#基于.Net-HtmlAgilityPack库的爬虫初体验

HtmlAgilityPack 总结