我是Selenium Webdriver的新手。 这可能看起来很幼稚,但作为我学习的一部分,我试图获得"关于" google.com上的链接。我想只使用cssSelector.hyperlink这样做 到目前为止,我尝试了以下多种变体:
WebElement we = driver.findElement(By.cssSelector(" #fbar> a [href =' /intl/en/about.html']"));
不知何故,我每次都遇到错误,无法找到该元素。
任何人都可以解决这个问题并帮助我解释如何使用cssSelector来实现这个目标吗?
由于
答案 0 :(得分:1)
您的CSS存在两个问题:
#fbar>a
之间添加空格,因此它正在寻找a
元素,该元素直接是具有id="fbar"
的元素的子元素href
的文字多于您尝试匹配的文字这个CSS选择器应该适合你:
#fbar a[href^='/intl/en/about.html']
这修复1.通过告诉选择器查找a
元素,该元素是具有id="fbar"
(并且不一定是直接后代)的元素的子元素,并且2.查找匹配项href
以您正在寻找的文字开头。
这是CSS选择器的可靠参考:http://www.w3schools.com/cssref/css_selectors.asp