将两个 XPath 表达式与一个公共前缀路径结合起来?

Combine two XPath expressions with a common prefix path?

我有这个 XPath。

//div[@class = 'section methods']/h2 | //div[@class = 'section methods']/div[@class = 'subsection']

因为它们共享一个公共前缀路径,所以我想将它们合并为如下内容。

//div[@class = 'section methods']/(h2 | div[@class = 'subsection'])

但是python中的lxml给出了错误。有没有办法正确地合并它们?

这两个 XPath,

//div[@class = 'section methods']/h2
//div[@class = 'section methods']/div[@class = 'subsection']

可以合并到这个单一的 XPath 中:

//div[@class = 'section methods']/*[self::h2 or self::div[@class = 'subsection']]