Safari Web Inspector中的Xpath无法正常工作

时间:2015-02-03 16:14:55

标签: xml xpath safari safari-web-inspector

我正在尝试在Safari Web检查器中使用xpath

我使用的是本地XML:

<searchable_index>
    <item>John</item>
    <item>Paul</item>
    <item>George</item>
    <item>Ringo</item>
</searchable_index>

我将其保存为本地文件,我打开Chrome并执行:

$ X( '//项目')

它没有问题,返回这个:

enter image description here

但是当我尝试在Safari中执行相同操作时,它会返回一个空数组

enter image description here

任何线索为什么会发生这种情况?它让我们疯狂

我在Yosemite中使用Safari 8.0.3(10600.3.18)

提前致谢。

1 个答案:

答案 0 :(得分:1)

出于某种原因,如果选择Safari 8作为WebKit中的用户代理,并且输入文件具有*.xml扩展名,则在控制台中键入的XPath表达式将搜索源文档,但在其上生成的HTML,说

  

此XML文件似乎没有与之关联的任何样式信息。文档树如下所示。

并且该HTML文档中没有item个元素。从理论上讲,您可以从&#34; DOM Tree&#34;更改视图。到#34;源代码&#34;,但如果用户代理是Safari 8,那么这不起作用。此外,如果用户代理允许切换到源代码,则路径表达式仍然无效。< / p>

然而,将文件扩展名更改为*.html会有效。然后,再试一次,Xpath表达式将找到item元素。

如果您无法更改文件扩展名,我认为Safari Web Inspector中无法找到这些元素。然后,您必须依赖另一个工具来评估针对XML的XPath表达式,无论您的编程语言或框架中有什么。