【发布时间】:2013-06-08 19:38:01
【问题描述】:
我有一个 XML 文档,我在其中使用 xpath 来查找使用文本的特定节点。
例如,我要查找的产品是具有许多产品节点的文件中的以下产品节点。
<product>
<code>10023</code>
<name>
<value language="en_US">There's Pippins and Cheese to Come</value>
<value language="en_CA">There's Pippins and Cheese to Come</value>
</name>
</product>
我正在使用 xpath 查询
node = self.productDoc.xpath("/product[name/value[text() = '{0}']]".format(self.Title))
来自 Lxml 模块的productDoc = etree.parse(FileLocation)
我的问题是:当我尝试使用上面提供的 xpath 路径选择节点时,我得到无效的谓词。 我相信问题出在“There's Pippins and Cheese to Come”文本中的单引号 这弄乱了xpath路径。 我该如何克服这个问题?
【问题讨论】:
-
你试过没有数据中的 apos(单引号)吗? T这将是此错误的诊断。 {0} 在做什么?
标签: python xml string xpath file-io