lxml是Python语言中使用XML跟HTML功能最丰富且容易使用的函式库。

[adsense][/adsense]

简介

lxml是libxml2libxslt函式库的Python系结,它独特的地方是结合了这些简单的Python原生API的函式库具有的速度跟完整的功能,大部分都相容且优于著名的ElementTree API,见lxml简介有更多的背景跟目标资讯,一些常见的问题在FAQ有回答。

对于商业的谘询和定制化,请联系Stefan Behnel

这一页描述lxml目前稳定的版本,也请看开发版本的网页。

文件

完整的lxml文件可以下载PDF文件,这个web上的HTML文件是一般的原始码下载 的一部分。

lxml.etree 尽可能地遵循ElementTree API在原生的libxml2上建构,假如你是ElementTree新手,就开始进入lxml.etree教学, 也见ElementTree 相容性概述跟比较lxml跟原始的ElementTreecElementTree实作的基准测试结果

lxml.etree教学ElementTree 文件之后,最重要去看的地方就是lxml.etree特有的API 文件,它描述lxml如何扩充ElementTree API以揭露libxml2跟libxslt的特有功能,像是XPathRelax NGXML SchemaXSLTc14n, Python程式码可以透过扩充函式的使用从XPath表示式跟XSLT样式表来呼叫,lxml也提供SAX相容的API,这样可以在标准函式库中使用SAX支援。

有一个单独的模组lxml.objectify实作了lxml.etree上的资料系结API,见objectify和etree的常见问题比较。

除了ElementTree API之外,lxml还具有一个复杂的自定义元素类别的API,这是一个在lxml之上写任意XML驱动API的简易方法,在1.1版的时候,lxml.etree有一个新的C-level API 可以在外部C模组里用来有效率地扩充lxml.etree,包括自定义的元素类别支援。

下载

下载lxml最好的方式就是拜访Python套件索引的lxml(PyPI),它也有不同平台上编译的原始码,这个原始码分布是使用此公钥来签入,MS Windows的执行档通常会在PyPI的原始码版本释出后几天供下载,假如你不能等待,先考虑试试没有那么新的版本。

最新的版本是lxml 2.3.2,2011-11-11释出 (2.3.2的更新纪录),较旧版本的列在下面。

请看一下安装说明

这个完整的网站(包括生成的API文件)是这个原始码分布的一部分,所以假如你想要下载这个文件作为离线使用,请取用原始码压缩档并且拷贝原始码档案中的doc/html的目录。

你也可以直接从svn目录来检查lxml的最新开发版本,使用像这样的命令(假设你使用hg并且安装了hg-git):

hg clone https://github.com/lxml/lxml.git lxml

※可参阅读版本控制使用git

你也可以透过web来浏览原始码档案库跟历史纪录,请先阅读how to build lxml from source,开发版本的最新更新纪录也可以存取, 如果你已经发现有错误已经更新或是你想要在最新的主干版本里你可以检查那里。