为什么我们需要 lxml 以及如何使用它
首先,为什么我们需要 lxml?
lxml.etree 是用于 XML 和 HTML 处理的通用 API。它旨在实现 ElementTree 的兼容性,并支持整个 XML 信息集。它非常适合混合内容和以数据为中心的 XML。它的通用性使其成为大多数应用的最佳选择。
lxml 库是旧 libxml2 和 libxsit 的扩展,它有一些主要的好处:
- 非常简单的 python API
- 记录完备
- 无需处理内存管理
- 无需担心分段错误
它还提供了一种处理任何 XML 数据格式的非常自然的方法。数据自动转换为 Python 数据类型,可以使用普通的 Python 运算符进行操作
大! 现在我该如何使用它?
在 Linux 机器上,你可以使用 apt-get 安装 lxml 库:
sudo apt-get install python-lxml
要导入和使用库:
from lxml import etree
要解析 xml 文件,你可以使用:
try:
parser = ET.XMLParser(remove_comments=False, remove_blank_text=True)
tree = ET.parse(file, parser=parser)
except (Exception):
print ('Failed to open file %s' % file, exc_info=True)
return tree