如何根据href文本单击元素?

时间:2017-01-15 20:52:58

标签: selenium selenium-webdriver

使用C#我试图点击具有此文本的元素:

<a target="_blank" href="http://client.mysite.com/nimda/settings.php?campaign=level+1;uid=vmrgssaxs8wkb45oy77pl5xuu&amp;id=172806#rotate"><img alt="Click to edit the rotator settings" title="Click to edit the rotator settings" src="../gfx/icons/small/rotation.png"></a>

所以我尝试使用这个表达式:

driver.FindElement(By.XPath("(//a[contains(@href, 'level 1')]")).Click();

但我的表达无效,为什么?

请注意,我想使用xpath,因为页面中有很多元素,并且除了href值之外都有相同的属性

1 个答案:

答案 0 :(得分:0)

括号

有问题
driver.FindElement(By.XPath("//a[contains(@href, 'level 1')]")).Click();

顺便说一句,您可以使用href

CssSelector属性查找元素
driver.FindElement(By.CssSelector("[href*='level 1']")).Click();
相关问题