用于登录的Xpath

用于登录的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()来过滤元素时,非常罕见的情况。