Please suggest the correct xpath for the below HTML
1
| <span class="glyphicon glyphicon-remove" title="Close"></span><span class="glyphicon glyphicon-pause" title="Stick"></span><span class="glyphicon glyphicon-question-sign"></span><h4 class="ui-pnotify-title">Confirmation Needed</h4>You are currently logged in from another browser.Are you sure to log-off the other session?<button type="button" class="btn btn-default">Ok</button> <button type="button" class="btn btn-default">Cancel</button> |
我需要单击确定
- 您甚至没有在问题中包含任何HTML。
-
如何阅读HTML,注意到其中包含哪个标签,进行一些实验以及学习如何自己构建xpath呢?这些知识将一路为您服务。
-
@RealSkeptic:感谢您的全心全意,只有在有需要的情况下,我们才能寻求帮助
-
您需要提供完整的HTML才能获取xpath
-
selenium命令的可能重复
这可能会有所帮助:
在这种情况下,请使用xPath。
为此使用google chrome的内置开发人员工具
将光标放在元素上
按Ctrl Shift C
单击元素
单击的元素的代码在底部的短窗口中突出显示
右键单击突出显示的代码
选择复制>复制XPath
在这里,您已经为该特定元素复制了xPath。如图所示:
单击以查看如何复制xPath
参考:Selenium命令
-
永远不喜欢这种技术。使用此功能时,路径通常如下所示:// div [5] // span [3] / button [1],这很不好。开发人员添加新的div,span或button进行的一项更改会杀死您的xpath。
我将使用以下内容确定并取消。这是偶然出现在弹出式iframe中吗?
1 2
| //button[contains(text(), 'Ok')]
//button[contains(text(), 'Cancel')] |
1
| "//div[@class='alert ui-pnotify-container alert-warning ui-pnotify-shadow']//button[.='Ok']" |
- 尽管此代码段可以解决问题,但提供说明确实有助于提高您的帖子质量。请记住,您将来会为读者回答这个问题,而这些人可能不知道您提出代码建议的原因。也请尽量不要在代码中添加解释性注释,因为这会降低代码和解释的可读性!
-
线程"主"中的异常org.openqa.selenium.NoSuchElementException:无此类元素:无法找到元素:{"方法":" xpath","选择器":" // div [@ class ='alert ui-pnotify-容器警报警告ui-pnotify-shadow'] // button [。='Ok']
-
@Harri您是否尝试过直接在浏览器中运行xpath。我复制了您的代码段,它对我有用。您可以尝试使用此" // button [包含(@ class,'btn btn-default')] [。='Ok']"。假设您只有一个具有相似类值的"确定"按钮。在类属性中使用contains,因为值中的末尾空格。
-
@Grasshopper没有这样的元素:无法找到元素:{" method":" xpath"," selector":" .// button [contains(@ class,'btn btn-default')] [。='Ok']
-
我已经使用您发送的代码直接在chrome和firefox上进行了尝试,并且都能正常工作。我没有更多的想法给你。