HTML标记的相对XPath帮助

时间:2019-04-17 12:52:15

标签: html xpath

我正尝试在下面为此标签创建相对的XPath选择器语句:

<a class="bttn bttn--primary bttn--inline js-localizeButton" ><span class="bttn__content">Click Me</span></a>

但是我似乎无法匹配它。这是我尝试过的:

//*[contains(text(),"Click Me")][1]

返回内部的<span>标签,但不返回我想要的<a>标签。

我尝试过使用类(并且想知道为什么它们会失败):

'//a[@class="bttn"]'
'//*[@class="bttn"]'

我觉得这是一件非常简单的事情,但是我花了数小时在上面摆弄,并可以使用一些帮助。

1 个答案:

答案 0 :(得分:1)

  

//*[contains(text(),"Click Me")][1]

     

返回内部的<span>标签,但不返回我想要的<a>标签。

很多方式...

“从这里到我的父母”

//*[contains(text(),"Click Me")][1]/..

“从这里到我的父母a

//*[contains(text(),"Click Me")][1]/parent::a

“从这里到我的第一个a祖先”

//*[contains(text(),"Click Me")][1]/ancestor::a[1]

“一个让我为孩子的a元素”

//a[*[contains(text(),"Click Me")]][1]

“一个让我作为后代的a元素”

//a[.//*[contains(text(),"Click Me")]][1]