我有一个网页,我想使用YQL。但我需要特定项的XPath。我可以看到它在谷歌Chrome的调试工具区域,但我没有看到复制XPath的方法。

是否有复制完整XPath的方法?


当前回答

在Firefox的Firebug中,您可以在检查一个元素后右键单击它,并选择复制XPath。我无法让ChromYQLip顺利工作。

其他回答

对于Chrome浏览器,例如:

右键单击要查找XPath的项上的“inspect”。 右键单击HTML DOM上突出显示的区域。 复制>选择“复制XPath”。 完成上述步骤后,您将从DOM获得元素的绝对XPath。 您可以进行更改,使其成为相对XPath(因为如果DOM发生更改,XPath仍然能够找到该元素)。

a.为此,打开浏览器的“元素”面板,按CTRL+F,粘贴XPath。

b.按照如下示例进行修改。

绝对的xpath = / / * [@ id = "应用"]/ div[1] /头/导航/ div [2] / ul /李[2]/ div /按钮

相关xpath = //div//nav/div[2]/ul/li[2]/div/按钮

当你进行更改时:

确保XPath在DOM中是唯一的。 仍然在DOM和网页上选择web元素。

按Cntl + Shift + C 通过单击,选择您希望获取其XPath的元素 右键单击控制台中突出显示的部分 复制->复制XPath

以上所有答案都是正确的,这里还有一种截图的方法。

来自Chrome:

右键单击要查找xpath的项上的“inspect” 右键单击控制台上高亮显示的区域。 复制xpath

作为chrome的最新更新,您现在可以单击元素检查器中的任何元素并将XPath复制到剪贴板。

谷歌Chrome提供了一个内置的调试工具,称为“Chrome DevTools”开箱即用,其中包括一个方便的功能,可以计算或验证XPath/CSS选择器,而不需要任何第三方扩展。

这可以通过两种方法来实现:

使用Elements面板中的搜索函数计算XPath/CSS选择器并突出显示DOM中的匹配节点。 在控制台面板中执行令牌$x("some_xpath")或$$("css-selectors"),这将计算和验证。

从元素面板

按F12打开Chrome DevTools。 元素面板默认是打开的。 按Ctrl + F在面板中启用DOM搜索。 输入要计算的XPath或CSS选择器。 如果有匹配的元素,它们将在DOM中高亮显示。 但是,如果DOM中有匹配的字符串,它们也将被视为有效的结果。例如,CSS选择器头应该匹配所有包含单词头的内容(内联CSS,脚本等),而不是只匹配元素。

从控制台面板

按F12打开Chrome DevTools。 切换到控制台面板。 输入像$x(".//header")这样的XPath来计算和验证。 输入CSS选择器,如$$(“header”)来计算和验证。 检查控制台执行返回的结果。

如果元素匹配,它们将以列表形式返回。否则显示一个空列表[]。

$x(".//article")
[<article class="unit-article layout-post">…</article>]

$x(".//not-a-tag")
[ ]

如果XPath或CSS选择器无效,则会以红色文本显示异常。例如:

$x(".//header/")
SyntaxError: Failed to execute 'evaluate' on 'Document': The string './/header/' is not a valid XPath expression.

$$("header[id=]")
SyntaxError: Failed to execute 'querySelectorAll' on 'Document': 'header[id=]' is not a valid selector.