【问题标题】:Clojure equivalent to Python's lxml library?Clojure 相当于 Python 的 lxml 库?
【发布时间】:2009-10-14 21:51:49
【问题描述】:

我正在寻找与 Python 的 lxml 库等效的 Clojure/Java。

我过去曾大量使用它来解析各种 html(作为 BeautifulSoup 的替代品),能够将相同的 elementtree api 用于 xml 真是太好了——真的是一个值得信赖的朋友!谁能推荐一个类似的 Java/Clojure 库?

关于lxml

lxml 是一个基于 libxml2 的 xml 和 html 处理库。它可以很好地处理损坏的 html 页面,因此非常适合屏幕抓取任务。它还实现了 ElementTree api,因此 xml/html 结构被表示为一个树对象,完全支持 xpath 和 css 选择器等。

它还有一些非常方便的实用功能,例如“清洁器”模块,它可以从“汤”中去除不需要的标签(即脚本标签、样式标签等)。

所以它使用简单、功能强大且速度非常快......!

【问题讨论】:

  • 对 lxml 功能的简短描述可能有助于 java/clojure 专家了解您在寻找什么
  • 好主意——添加了“关于 lxml”部分

标签: java python clojure lxml


【解决方案1】:

直播:http://github.com/cgrand/enlive

我已将它用于屏幕抓取,并且效果很好。它使用类似 CSS 选择器的语法来获取文档中的元素。

【讨论】:

    【解决方案2】:

    对于 Java(因此可从 Clojure 中使用)是 tagsoup-library,与 lxml 一样,它是一个容错的 SGML 变体的解析器。

    Clojure 有一个捆绑的命名空间 clojure.xml,但这仅适用于有效的 XML。

    【讨论】:

      猜你喜欢
      • 2011-05-26
      • 1970-01-01
      • 2016-01-19
      • 2011-04-18
      • 2020-04-15
      • 2010-11-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多