XPath:排除子元素

时间:2017-03-10 16:42:53

标签: xpath

我使用XPath抓取内容。我需要抓取的是div中给定id的内容。在div的内部还有另一个div,我不想抓内容。

我使用以下XPath:

//[@id='Main'][not(contains(div/@id, 'orderform'))]

但是使用这个XPath我不是像所期望的那样从所有网址中提取,而是从那些网址中提取div id="Main"并且内部没有div id="orderform"

我应该使用什么XPath代替整个div id="Main",但不包括div id="orderform"的内容?

1 个答案:

答案 0 :(得分:2)

//*[@id='Main']//*[not(div[@id="orderform"])]

div标记是子标记,您应该降低级别。

//*[@id='Main']/*[not(div[@id="orderform"])]