< >我使用LXML解析包含席:包含元素的文件,我使用XILL()来解析包含。在
给定一个元素,有没有任何方法可以标识该元素最初出现在的文件和源行中?在
例如:
from lxml import etree
doc = etree.parse('file.xml')
doc.xinclude()
xpath_expression = ...
elt = doc.xpath(xpath_expression)
# Print file name and source line of `elt` location
Tags:
xinclude扩展将添加一个xml:基属性到顶层展开元素, 以及elt.基地以及elt.sourceline公司也会针对子节点进行更新,因此:
会给你你想要的。
如果elt不是xinclude扩展的一部分,那么elt.基地会指向基地 文档('文件.xml')和elt.sourceline公司将是该文件中的行号。 (请注意,sourceline通常看起来实际上指向element标记所在的行 结束,而不是开始的行,如果元素在多行上,就像 验证错误消息通常指向发生错误的结束标记。)
您可以找到初始的xincluded元素,并使用以下内容进行检查:
^{pr2}$相关问题 更多 >
编程相关推荐