我使用lxml解析XML文档
如何获得声明字符串?

 <?xml version="1.0" encoding="utf-8" ?>


我想检查它是否存在,它具有什么编码以及什么xml版本。

最佳答案

解析文档时,所得的ElementTree对象应具有一个DocInfo对象,该对象包含有关已解析的XML或HTML文档的信息。

对于XML,您可能对此xml_versionencodingDocInfo属性感兴趣:

>>> from lxml import etree
>>> tree = etree.parse('input.xml')
>>> tree.docinfo
<lxml.etree.DocInfo object at 0x7f8111f9ecc0>
>>> tree.docinfo.xml_version
'1.0'
>>> tree.docinfo.encoding
'UTF-8'

10-06 08:56