用于登录的Xpath
问题描述:
我正在尝试点击使用xpath的“*”主页上的“登录”链接,如下所示。但没有成功用于登录的Xpath
driver.findElement(By.xpath(“// a [contains(text(),'log in')]”))。click();
请帮助我在这里失踪。
- 感谢
答
请使用以下XPath:
//a[@class='login-link'][text()='log in']
我亲自试过,并与我一起工作。希望能帮助到你。
答
,你已经在你的问题使用的XPath返回两个webelements:
<a href="https://*.com/users/login?returnurl=http%3a%2f%2f*.com%2f" class="js-gps-track" data-gps-track="site_switcher.click({ item_type:11 })">log in</a>
<a href="https://*.com/users/login?returnurl=http%3a%2f%2f*.com%2f" class="login-link">log in</a>
这就是为什么硒不能点击that.So使用
//a[@class='login-link'][text()='log in']
答
试试这个:
driver.findElement(By.xpath("//a[@class='login-link' and .='log in']").click();
以上XPath匹配<a>
标签有class
attri bute等于"login-link"
,内部文本等于"log in"
。
一般提示:总是比text()
更喜欢.
。当你必须特别使用text()
来过滤元素时,非常罕见的情况。