我有一个我想要与YQL一起使用的网页。但我需要特定项目的xpath。我可以在调试工具区域看到谷歌浏览器,但我没有看到复制该xpath的方法。
有没有办法复制完整的xpath?
答案 0 :(得分:529)
您可以在Chrome javascript控制台中使用$x
。不需要扩展。
ex:$x("//img")
Web检查器中的搜索框也将接受xpath
答案 1 :(得分:203)
右键点击node => “复制XPath”
答案 2 :(得分:61)
答案 3 :(得分:25)
XPath Helper扩展可以满足您的需求: https://chrome.google.com/webstore/detail/hgimnogjllphhhkhlmebbmlgjoejdpjl
答案 4 :(得分:12)
现在不需要扩展程序。右键单击任何想要xpath的元素,然后单击“Inspect Element”,然后再单击Inspector,右键单击元素并单击“Copy Xpath”。
答案 5 :(得分:9)
xpathOnClick有您要找的内容:https://chrome.google.com/extensions/detail/ikbfbhbdjpjnalaooidkdbgjknhghhbo
阅读评论,实际上需要三次点击才能获得xpath。
答案 6 :(得分:9)
Google Chrome提供了一个名为“Chrome DevTools”的内置调试工具,其中包含一个便捷的功能,可以评估或验证XPath / CSS选择器,而无需任何第三方扩展。
这可以通过两种方法来完成:
使用Elements面板中的搜索功能来评估XPath / CSS选择器并突出显示DOM中的匹配节点。 在Console面板中执行令牌$ x(“some_xpath”)或$$(“css-selectors”),它们将进行评估和验证。
从元素面板
按F12打开Chrome DevTools。
默认情况下应打开元素面板。
按Ctrl + F在面板中启用DOM搜索。
键入要评估的XPath或CSS选择器。
如果有匹配的元素,它们将在DOM中突出显示。 但是,如果DOM中存在匹配的字符串,则它们也将被视为有效结果。例如,CSS选择器标题应匹配包含单词标题的所有内容(内联CSS,脚本等),而不是仅匹配元素。
从“控制台”面板
按F12打开Chrome DevTools。
切换到控制台面板。
键入XPath,如$x(".//header")
进行评估和验证。
输入$$("header")
等CSS选择器进行评估和验证。
检查从控制台执行返回的结果。
如果元素匹配,它们将在列表中返回。否则显示空列表[]。
$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.
答案 7 :(得分:9)
让我们告诉你一个简单的公式来找到任何元素的xpath:
1-在浏览器中打开网站
2-选择元素并右键单击
3-单击检查元素选项
4-右键单击选定的html
5-选择复制xpath的选项在需要的地方使用它
此视频链接对您有所帮助。 http://screencast.com/t/afXsaQXru
注意:对于xpath的高级选项,您必须知道html的正则表达式或模式。
答案 8 :(得分:9)
从最新的chrome更新开始,您现在可以单击元素检查器中的任何元素并将XPath复制到剪贴板。
答案 9 :(得分:4)
只需右键单击您想要xpath的元素,您将看到一个要复制它的菜单项。当裁谈会上任时,这可能不存在,但现在肯定存在。
答案 10 :(得分:3)
在Firefox中的Firebug中,您可以在检查元素后右键单击该元素,然后选择“复制XPath”。我无法让ChromYQLip顺利运作。
答案 11 :(得分:3)
例如,对于Chrome:
a。为此,通过打开浏览器的“元素”面板,按CTRL + F,粘贴XPath。
b。按照以下示例中的说明进行更改。
绝对xpath = // * [@@ =“ =” app“] / div [1] / header / nav / div [2] / ul / li [2] / div / button
相关的xpath = // div // nav / div [2] / ul / li [2] / div / button
进行更改时:
答案 12 :(得分:1)
略微过时,但也许有用:在Mac Chrome上,虽然你无法在开发工具面板的搜索框中复制x路径(相反,复制将节点抓取为HTML),你可以将文本拖放到一个外部编辑。
答案 13 :(得分:1)
答案 14 :(得分:0)
使用此扩展,它会根据id或class生成xpath,这可能是你想要使用的。
单击浏览器图标,面板显示在页面的右上角,然后单击开始检查,然后单击任何元素以获取xpath。
相当于上面的Chrome扩展解决方案可插入Java项目jar: 虽然Chrome同时提供了XPath和选择器,但它们都默认属于&#34; id&#34;或其他动态变化的项目。上面的问题是由依赖持久属性的需要驱动的。 https://www.burlingtonvisionandlab.com/Downloads/TuSqK231LashowXPathSE7HTML/showXPathSE1_7Table.html
可下载的免费jar将显示更长的路径,其中包含可供选择的选择属性。
答案 15 :(得分:0)
您可以尝试使用Chrome Web Extension TruePath,该Web扩展在右键单击网页时动态生成相对的XPath,并将所有XPath显示为菜单项。
答案 16 :(得分:0)
答案 17 :(得分:0)