lxml怎么处理XML文档的命名空间
在lxml中处理XML文档的命名空间有两种常用的方法:
- 使用xpath方法处理命名空间:
from lxml import etree# 解析XML文档tree = etree.parse('example.xml')# 定义命名空间映射nsmap = {'ns': 'http://www.example.com'}# 使用xpath方法查询带有命名空间的元素elements = tree.xpath('//ns:element', namespaces=nsmap)for element in elements:print(element.text)
- 使用register_namespace方法注册命名空间:
from lxml import etree# 解析XML文档tree = etree.parse('example.xml')# 注册命名空间etree.register_namespace('ns', 'http://www.example.com')# 查询带有命名空间的元素elements = tree.findall('.//{http://www.example.com}element')for element in elements:print(element.text)
以上是使用lxml处理XML文档中命名空间的两种方法,根据实际情况选择适合自己的方法。