2009-10-14 34 views
11

我正在尋找Clojure/Java相當於Python的lxml庫。Clojure等價於Python的lxml庫嗎?

我以前用它來解析各種html(作爲BeautifulSoup的替代品),並且能夠爲xml使用相同的elementtree api也非常棒 - 真正值得信賴的朋友!任何人都可以推薦一個類似的Java/Clojure庫嗎?

關於LXML

LXML是基於關閉的libxml2的XML和HTML處理庫。它處理損壞的html頁面非常好,因此非常適合屏幕抓取任務。它還實現了ElementTree api,所以xml/html結構被表示爲一個樹形對象,並且完全支持xpath和css選擇器等等。

它還有一些非常方便的實用功能,例如「清潔」模塊,可以從「湯」(即腳本標籤,樣式標籤等)中去除不需要的標籤。

所以它很簡單,使用,健壯,非常快......!

+0

lxml的簡短描述可能有助於java/clojure專家瞭解您在尋找什麼 – pstanton 2009-10-14 23:00:05

+0

好主意 - 添加了「about lxml」部分 – erikcw 2009-10-15 04:01:17

回答

4

對於Java(因此可用於Clojure)是tagsoup-library,它與lxml一樣,是一個容錯的SGML變體解析器。

Clojure擁有一個捆綁的名稱空間clojure.xml,但這隻適用於有效的XML。