0

我正在尝试自动化网页http://www.quikr.com,在主页上,他们列出了手机、电子和技术等类别。

我想单击电子与技术之类的链接之一并获取列表中的所有链接。

我无法填充我的数组列表,因为我正在尝试使用的定位器正在抛出错误

我试着给

List<WebElement>link_boxes=driver.findElements(By.xpath("//[@id='divExpand18222212654']"));

List<WebElement> link_boxes=driver.findElements(By.id("divExpand18222212654"))

它不起作用,请为此提供解决方案。

4

2 回答 2

1

You should be able to retrieve the links under the div element with id divExpand18222212654 with the following CSS expression:

driver.findElements(By.cssSelector("#divExpand18222212654 a"));
于 2013-07-05T09:32:39.143 回答
0

你可以使用这样的东西

public void showSubLinksListByName(String name) {
    String linkSelectorTemplate = ""//span[.='%s']";
    String subListSelectorTemplate = "div#%s";

    WebElement link = driver.findElement(
            By.xpath(String.format(linkSelectorTemplate, name)));
    String id = link.getAttribute('id').replace("chpCategoryExpand", "");

    By subCategoriesLinksSelector = By.css(
              String.format(subListSelectorTemplate, id));

    new WebDriverWait(driver, 60).until(
         ExpectedConditions.visibilityOfElementLocated(subCategoriesLinksSelector);
}

在该子列表可见之后,您可以对其进行任何操作。

于 2013-07-05T11:34:36.013 回答