當前位置:編程學習大全網 - 源碼下載 - C# Html Agility Pack 網絡爬蟲怎麽爬

C# Html Agility Pack 網絡爬蟲怎麽爬

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;

}

}

  • 上一篇:花店的經營理念
  • 下一篇:如何寫企業網站建設方案?
  • copyright 2024編程學習大全網