2

正确执行以下操作的以下语法是什么?

title_node.find("EST/EST_Version
                       [Master_Type_HD_SD='HD'] AND [Version_Type='Standard']
                     /Vendor_ID").text

以下是 xml 的外观:

<EST_Version>
  <Vendor_ID>1660023-200455</Vendor_ID>
  <Version_Type>Standard</Version_Type>
  <Master_Type_HD_SD>SD</Master_Type_HD_SD>
</EST_Version>

这本质上就是我想要做的(虽然以下是不正确的)

title_nod.find("EST/EST_Version[Master_Type_HD_SD='SD']/../
                   EST_Version[Version_Type='Directors Cut']/Vendor_ID").text
4

1 回答 1

1

对于多个谓词过滤器(方括号),不要将它们与and. 只需按顺序使用它们。第一个谓词过滤器应用于集合,然后应用下一个谓词过滤器:

EST/EST_Version[Master_Type_HD_SD='HD'][Version_Type='Standard']/Vendor_ID

在单个谓词过滤器中,您将使用and多个条件:

EST/EST_Version[Master_Type_HD_SD='HD' and Version_Type='Standard']/Vendor_ID
于 2012-08-17T00:28:02.947 回答