1. 程式人生 > >html解析器比較

html解析器比較

html的解析器很多,常用的有htmlparser和jsoup,jsoup可以看做是htmlparser的簡化,因為其強大的選擇器使得獲取元素非常的方便,有點類似Jquery中的選擇器(可以直接拿),而htmlparser結構簡單,功能強大,但是比較難上手,而且很久沒有更新,所以現在越來越多的人推薦使用Jsoup。當然,還有很多其他的解析器,下面給出一些簡單介紹。

HTML Parser 是一個對HTML進行分析的快速實時的解析器,最新的發行版本是1.6,另外2.0的開發版本已經兩年沒有進展了。示例程式碼: Parser parser = new Parser ("http://whatever"); NodeList list = parser.parse (null); Node node = list.elementAt ()

jsoup 是一款 Java 的HTML 解析器,可直接解析某個URL地址、HTML文字內容。示例程式碼: File input = new File("/tmp/input.html");Document doc = Jsoup.parse(input, "UTF-8", "http://example.com/");Element content = doc.getElementById("content")

NekoHTML是一個Java語言的 HTML掃描器和標籤補全器(tag balancer) ,使得程式能解析HTML文件並用標準的XML介面來訪問其中的資訊。這個解析器能夠掃描HTML檔案並“修正”許多作者(人或機器)在編寫HTML文件 過程中常犯的錯誤。 NekoHTML能增補缺失...

更多NekoHTML資訊

JTidy 是 HTML Tidy 用Java語言實現的版本,提供了一個HTML的語法檢查器和很好的列印功能。JTidy可以用來清除格式不好和不對的 HTML。此外,JTidy提供了對整個HTML的DOM分析器。程式設計師可以將JTidy當作一個處理HTML檔案的DOM解析器來使用。

HtmlCleaner是一個開源的Java語言的Html文件解析器。HtmlCleaner能夠重新整理HTML文件的每個元素並生成結構良好(Well-Formed)的 HTML 文件。預設它遵循的規則是類似於大部份web瀏覽器為創文件物件模型所使用的規則。然而,使用者可以提供自定義tag和規則組來.

Streaming HTML parser 是一個 C 語言的 HTML 解析器。示例程式碼 #include <stdio.h>#include <streamhtmlparser/htmlparser.h>int main(void) { unsigned int getchar_ret; htmlparser_ctx *parser = htmlparser_new(); while((getchar_ret =...更多Streaming HTML parser資訊

html5lib 是一個 Ruby 和 Python 用來解析 HTML 文件的類庫,支援HTML 5 以及最大程度相容桌面瀏覽器。主要特性包括: Parses valid and invalid HTML documents to a tree Support for minidom, ElementTree (including cElementTree and lxml.etree)...更多html5lib資訊

Cobra 是一個純 Java 的HTML 解析和生成器,支援 HTML 4 、JavaScript、CSS 2 示例程式碼: import org.lobobrowser.html.parser.*;import org.lobobrowser.html.test.*;import org.lobobrowser.html.gui.*;import org.lobobrowser.html.*;import org.w3c.d...更多Cobra資訊

Aaron Patterson和Mike Dalessio開發了一個新的Ruby解析HTML/XML的ruby庫 - Nokogiri。他的速度比目前應用的最廣泛的Hpricot還要快許多。經過Benchmark測試表明,Nokogiri在載入XML文件的速度是Hpricot的7倍,在XPATH搜尋的速度是Hpricot的5倍,而在CSS選...更多Nokogiri資訊

毫無疑問,HTML、HTTP 和 XML 是支撐 Web 技術的三種最重要的技術。對於 PHP 開發人員而言,使用這些技術可能比較麻煩。但是,新的 QueryPath 庫,即 jQuery JavaScript 庫面向 PHP 的一個版本,為使用 XML、HTML 和 HTTP 提供了一個方便的 API。從 Web ...更多QueryPath資訊

afterwork 是一個 C# 語言用來解析 HTML 文件的開發包。更多afterwork資訊

Jericho HTML Parser 是一個 Java 的類庫用來解析HTML文件。更多Jericho HTML Parser資訊

jScraper 提供了簡單的介面用來解析HTML文字,它將HTML文字轉成Java的物件。檢視 jScraper 的 JavaDoc 文件: http://sharkysoft.com/software/java/html/docs/javadocs/...更多jScraper資訊

Jericho HTML解析器是一個Java庫,以分析和操縱部分的HTML檔案,其中包括伺服器端的標籤,而過濾掉任何無法識別的或無效的HTML 。它也提供高層次的HTML表單操作函式。示例程式碼: import net.htmlparser.jericho.*;import java.util.*;import java.io.*;im...更多Jericho資訊

CyberNeko 是一個HTML解析器,它可以將HTML檔案解析成w3c的Document物件。也就是 NekoHTML更多CyberNeko資訊

htmlcxx 是一個 C++ 的 HTML 解析器和 CSS1 的解析器。The parsing politics attempt to mimic the behavior of Mozilla Firefox, so you should expect parse trees similar to those created by Firefox. However, it does not insert nonexistent stuf...更多htmlcxx資訊

Beautiful Soup 庫是一個非常神奇的 “粗糙的解析器”,用於解析實際 Web 頁面中包含的有效 HTML。示例: from BeautifulSoup import BeautifulSouphtml = "<html><p>Para 1<p>Para 2<blockquote>...更多Beautiful Soup資訊

MozillaParser 是一個 Java 的HTML 解析類庫,基於 mozilla 的html 解析器,提供了Java類到 Mozilla類的一個橋接,輸入一個HTML文字,輸出一個 Java 的 Document 物件。更多MozillaParser資訊

當您希望與 Web 頁面中找到的內容進行某種比較複雜的互動時,您需要使用 mechanize 庫示例程式碼: import refrom mechanize import Browserbr = Browser()br.open("http://www.example.com/")# follow second link with element text matching regular ex...更多mechanize資訊

HTML Purifier是一個可以用來移除所有惡意程式碼(XSS),而且還能確保你的頁面遵循W3C的標準規範的PHP類庫。更多HTML Purifier資訊

HotSAX是一個快速,小型的footprint,用於HTML/XML/XHTML的非確認的SAX2解析。它可以在簡單的Web代理、頁面抓取器和爬蟲程式中使用。它類似於Apache Xerces分析器。更多HotSax資訊

HtmlDistiller 是一個 .NET 的 HTML 文件解析類庫。該類庫對 HTML 文件的格式要求並不嚴格,可根據標籤名、屬性和樣式進行過濾。更多HtmlDistiller資訊

這是一個 PHP5 的 HTML 文件解析器,示例程式碼: // Create DOM from URL or file $html = file_get_html(&apos;http://www.google.com/&apos;); // Find all images foreach($html->find(&apos;img&apos;) as $element) echo $element->src . &apos;<br>&apos;; // Fin...更多PHP Simple HTML DOM Parser資訊

這是一個純 JavaScript 的 HTML 文件解析器,線上演示。示例程式碼: var results = ""; HTMLParser("<p id=test>hello <i>world", { start: function( tag, attrs, unary ) { results += "<" + tag; for ( var i = 0; i < at...更多Pure JavaScript HTML Parser資訊

TagSoup 是一個Java開發符合SAX的HTML解析器更多TagSoup資訊