是否有一个纯Python的XSLT库?
在我需要支持的某些平台上安装libxml2 + libxslt或任何类似的C库是个问题。
我真的只需要基本的XSLT支持,速度不是主要问题。
答案 0 :(得分:9)
不幸的是,目前还没有纯python XSLT处理器。如果您需要更独立于平台的东西,您可能希望使用基于Java的XSLT处理器,如Saxon。 4Suite正在开发一个纯python XPath解析器,但它看起来不像纯XSLT处理器会出现一段时间。也许最好使用Python的一些功能来尝试和近似现有的样式表,或者研究使用Java的可行性。
答案 1 :(得分:6)
我认为你不能在cpython中做到这一点:没有纯Python的XSLT实现。
但是你可以使用JVM的内置XSLT API在jython中轻松地完成它。我写了一篇关于在Google AppEngine上执行此操作的具体案例的博文,但在任何情况下,给出的代码都应该在jython下工作。
使用Google AppEngine和jython
上的XSLT进行转换http://jython.xhaus.com/transforming-with-xslt-on-google-appengine-and-jython/
HTH,
艾伦。
答案 2 :(得分:1)
你看过4suite吗?
答案 3 :(得分:1)
如果您只需要基本支持,并且您的XML不是太疯狂,请考虑从等式中删除XSLT元素,并使用DOM / SAX解析器。
以下是PythonInfo Wiki的一些信息:
[DOM]糟透了整个XML文件, 把它放在记忆中,让你工作 用它。另一方面,萨克斯发泄 一步一步的事件 文件。
您怎么看?
答案 4 :(得分:1)
“lxml是功能最丰富且易于使用的库,用于处理Python语言中的XML和HTML。”