如何验证我的XPath?
我使用Chrome开发者工具检查元素并形成我的XPath。我验证它使用Chrome插件XPath检查器,但它并不总是给我的结果。验证XPath的更好方法是什么?
我还尝试使用Firebug检查bug,并使用FirePath进行验证。但是Firepath也验证XPath吗?
我的最后一个选择是使用Selenium WebDriver来确认XPath。
如何验证我的XPath?
我使用Chrome开发者工具检查元素并形成我的XPath。我验证它使用Chrome插件XPath检查器,但它并不总是给我的结果。验证XPath的更好方法是什么?
我还尝试使用Firebug检查bug,并使用FirePath进行验证。但是Firepath也验证XPath吗?
我的最后一个选择是使用Selenium WebDriver来确认XPath。
当前回答
下面是我用来在HTML网页中快速可视化XPATH结果的方法——在HTML5中,这在技术上是一个XML文档(参见注释)。
打开开发工具(F12) 进入控制台,输入以下内容: $ x (" / / p[一]")。forEach(myFancyResult => myFancyResult.style. backgroundcolor = 'yellow');
//p[a]是一个XPath表达式,它选择所有包含<a>元素的<p>元素。结果是一个数组,它被馈送到forEach方法中,从中我们修改元素backgroundColor。
注意: 对于本地打开的XML文档,这种方法是有问题的,因为浏览器将应用默认样式表来查看具有漂亮颜色的XML文档,并允许您折叠和展开文档;这有效地将XML文档包装在div或span标记中,这会混淆原始XML文档,使这种技术有些无用。
其他回答
使用Chrome或Opera
无需任何插件,无需编写任何XPath语法字符
右键单击所需元素,然后“inspect” 右键单击突出显示的元素标签,选择复制→复制XPath。
;)
你可以在Windows下用CTRL+I打开Chrome中的DevTools(或CMD+I Mac),用F12打开Firefox,然后选择控制台选项卡),并输入$x("your_xpath_here")检查XPath。 这将返回一个匹配值的数组。如果它为空,您就知道该页上没有匹配项。
Firefox v66(2019年4月):
Chrome v69(2019年4月):
下面是我用来在HTML网页中快速可视化XPATH结果的方法——在HTML5中,这在技术上是一个XML文档(参见注释)。
打开开发工具(F12) 进入控制台,输入以下内容: $ x (" / / p[一]")。forEach(myFancyResult => myFancyResult.style. backgroundcolor = 'yellow');
//p[a]是一个XPath表达式,它选择所有包含<a>元素的<p>元素。结果是一个数组,它被馈送到forEach方法中,从中我们修改元素backgroundColor。
注意: 对于本地打开的XML文档,这种方法是有问题的,因为浏览器将应用默认样式表来查看具有漂亮颜色的XML文档,并允许您折叠和展开文档;这有效地将XML文档包装在div或span标记中,这会混淆原始XML文档,使这种技术有些无用。
检查xpath的另一个选项是使用selenium IDE。
安装Firefox Selenium IDE 在FireFox中打开应用程序,然后打开IDE 在IDE中,在新行中,将xpath粘贴到目标,然后单击 找到。相应的元素将在 应用程序
我验证XPath和CSS选择器使用WebSync Chrome扩展。
它提供了验证选择器以及通过单击元素属性生成/修改选择器的可能性。
https://chrome.google.com/webstore/detail/natu-websync/aohpgnblncapofbobbilnlfliihianac