我想通过Selenium Java WebDriver中的xpath选择所有href

时间:2019-04-03 19:26:57

标签: java selenium-webdriver selenium-chromedriver

我正在选择href中的所有xpathselenium java。如何获得用于选择全部内容的正确href

线程“主” org.openqa.selenium.InvalidSelectorException: invalid selector: Unable to locate an element with the xpath expression //a[[starts-with(@href,'javascript:doViewDispute')]

中的异常

由于以下错误:

SyntaxError: Failed to execute 'evaluate' on 'Document': The string 
//a[[starts-with(@href,'javascript:doViewDispute')]' is not a valid XPath expression.
List<WebElement> oLinksOnPage = driver.findElements(By.xpath("//a[[starts-with(@href,'javascript:doViewDispute')]"));
                    System.out.print ( oLinksOnPage );

                    System.out.println(oLinksOnPage.size());

                    for(i = 0; i<oLinksOnPage.size(); i++){

                        System.out.println(oLinksOnPage.get(i).getText());

                    }

1 个答案:

答案 0 :(得分:2)

您的初始代码中有一些错误:List oLinksOnPage = driver.findElements(By.xpath("//a[[starts-with(@href,'javascript:doViewDispute')]"));

首先,您不能只拥有List;您必须说明列表是什么,所以List<WebElement>

第二,您的xpath字符串中有两个右括号,

因此您的最终代码应为:

List<WebElement> oLinksOnPage = driver.findElements(By.xpath("//a[starts-with(@href,'javascript:doViewDispute')]"));

尝试一下,看看它是否更适合您。