0

我正在尝试在 selenium 中构建一个简单的函数,它给定一个文本带回谷歌的所有结果。我正在使用 xpath 来查找所有结果元素。尽管 "//a[@class='l']" 与 firebug 一起作为合法的 xpath 工作,但当我运行代码时,结果列表为空。

public void testSearch() {
    WebDriver driver = new FirefoxDriver();
    driver.get("http://www.google.com");

    WebElement query = driver.findElement(By.name("q"));
    query.sendKeys("obama twitter");
    query.submit();

    long end = System.currentTimeMillis() + 5000;
    while (System.currentTimeMillis() < end) {
        WebElement resultsDiv = driver.findElement(By.className("gssb_e"));

        if (resultsDiv.isDisplayed()) {
            break;
        }
    }

    List<WebElement> weblinks = driver.findElements(By.xpath("//a[@class='l']"));
    for (WebElement suggestion : weblinks) {
        System.out.println(suggestion.getText()+"\n");
        System.out.println("==> "+suggestion.getAttribute("href")+"\n");
    }
}
4

0 回答 0