用xpath开头查找webelement

时间:2012-09-06 11:03:46

标签: selenium

我正在尝试使用Selenium Webdriver查找链接。我不想通过链接文本找到它,只想输入的实际链接。这可以通过使用Selenium的find元素通过xpath - 方法来完成,但是当我只知道该href文本的开头而不是整个文本时,语法是什么?

我想我正在使用某种方法启动xpath链接定位器。我没有准备好代码。

3 个答案:

答案 0 :(得分:24)

您可以使用xpath中的start-with来查找以特定文本开头的属性值。

例如,假设您在页面上有以下链接:

<a href="mylink_somerandomstuff">link text</a>

然后,您可以使用以下xpath查找具有以“mylink”开头的href的链接:

//a[starts-with(@href, "mylink")]

答案 1 :(得分:4)

如果你不知道href的起源,你也可以使用contains:

<a href="link_with_key_word_in.html">Link</a>

要查找此链接,您可以使用:

By.xpath("//a[contains(@href, 'key_word')]"));

答案 2 :(得分:0)

只需在Mozilla Firefox中安装这些插件:Firebug和FirePath。

转到firefox中的链接,然后使用F12键调用firebug。

然后选择FirePath。

单击inspect元素按钮并选择元素。它将显示元素的xpath。

示例:

<input type = "text" id ="text-checking123"> </input>

元素的Xpath将是

//input[starts-with(@id, 'text-')]

然后在java代码中使用它。

**Please do add comment, if the code works for you. It will help others to view the answer.**