2010-05-22 60 views
23

你會選擇哪一個?我的重要屬性是(不按順序):Nokogiri vs Hpricot?

  1. 支持和未來的增強。
  2. 社區和一般知識庫(在互聯網上)。
  3. 綜合(I.E.,經過驗證可以解析各種*。* ml頁面)。
  4. 表現。
  5. 內存佔用(運行時,而不是代碼庫)。

回答

35

挑選Nokogiri,所有點和特別是第一點:Hpricot是no longer maintained

元回答:請參閱ruby-toolbox瞭解不同工具在特定區域的受歡迎程度。

+0

更新 - hpricot不再被維護,這使得選擇更容易。 – jsh 2013-01-15 23:05:27

+0

@jsh:謝謝,回答更新 – 2013-01-16 00:24:55

8

如果您沒有或無法在您使用的計算機上安裝LibXML,請僅選擇Hpricot。如果情況並非如此,那麼選擇Nokogiri,在提到的五個屬性中比Hpricot更好。

+7

自從幾分鐘前,還有一個純Java版的Nokogiri。所以,你可以在沒有FFI和沒有libxml的JRuby上使用Nokogiri。 (Google App Engine是FFI不可行的一個例子。) – 2010-05-22 19:47:04

6

我發現Hpricot很有用的情況是在處理破碎的HTML時,處理後需要保持斷開狀態。 Hpricot擅長僅修改您更新的文檔部分。除非需要這個,否則Nokogiri就是要走的路。