0

如何为两个属性编写 Xpath?例如,我需要获得大于 20% 的折扣值,并且相同的折扣大于 200 金额(没有任何与基值的链接)

4

2 回答 2

2

您可以在谓词中组合约束。例如:

from lxml import etree

doc = etree.XML("""<xml>
<items>
<item discount_perc="25" discount_value="250">Something</item>
</items>
</xml>
""")

doc.xpath('items/item[@discount_perc > 20 and @discount_value > 200]')
于 2013-08-20T11:56:10.347 回答
0

将尝试通过一个简单的例子来回答。假设您有以下 xml:

<?xml version="1.0"?>
<data>
   <node value="10" weight="1">foo</node>
   <node value="10" weight="2">bar</node>
</data>

然后使用此查询选择第一个<node>的文本:

//node[@value="10" and @weight="1"]/text()

这是第二个:

//node[@value="10" and @weight="2"]/text()

希望这可以帮助。

于 2013-08-20T11:58:17.000 回答