2009-10-14 68 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。