本文介紹了.net 版的一個HTMLParser網頁解析開源類庫(Winista.HTMLParser)的功能特性、工作原理和使用方法。對於使用.net進行Web信息提取的開發人員進行了一次HTMLParser的初步講解。應用實例將會在日后的文中介紹,敬請關注。
一、背景知識
HTMLParser原本是一個在sourceforge上的一個Java開源項目,使用這個Java類庫可以用來線性地或嵌套地解析HTML文本。他的功能強大和開源等特性吸引了大量Web信息提取的工作者。然而,許多.net開發者朋友一直在尋找一種能在.net中使用的HTMLParser類庫,筆者將介紹Winista.HTMLParser類庫,對比於其他原本數量就非常少的.net版HTMLParser類庫,Winista的版本的類庫結構可以說更接近於原始Java版本。
該類庫目前分為Utltimate、Pro、Lite和Community四個版本,前三個版本都是收費的。只有Community版本可以免費下載並查看所有的源碼。
當前Community最新版本1.8 下載。
該版本的類庫文檔下載。
二、功能和特性
1.可以在任何.net語言中使用(C#,VB.net,J#等)
2.可以解析幾乎所有的Html標簽,並且可以通過標簽類別、屬性或正則表達式來搜索標簽。有些甚至在Java版本中無法支持的標簽也在這個版本中得到了支持。
3.設置可擴展的過濾器來過濾結果集中不需要的標簽。
4.高性能的API接口使得你能處理許多常見的問題,如:哪些是頁面中的外部鏈接?哪些是圖片?哪些是不同的表格?頁面中有錯誤的鏈接嗎等等問題。
5.一個基於Http協議引擎的配置文件使得你能通過一個指定的URL地址來獲得該頁面內容。該爬蟲可以遵循robot.txt協議文件來獲得組織和允許訪問的列