遍历元素,获取网址,并将网址放入列表中。硒java

时间:2019-04-02 10:18:31

标签: java selenium url arraylist

this.a.b = 'hello'

我收到以下错误消息。

while (i < 165) {
    i = i + 1;
    ArrayList url[];
    url.add(driver.findElement(String.valueOf(By.xpath("//*[@id=\"villages\"]/tbody/tr[" + i + "]/td[3]/a")).getAttribute("href")));
}

我不太确定发生了什么。 Arraylist应该像一个字符串数组吗?而且getAttribute(String)是一个字符串...所以我不知道为什么这不兼容。有任何想法吗?

如果在将变量添加到arraylist之前尝试使变量携带该值,则会出现此错误。 无法在数组类型ArrayList []上调用add(String)

2 个答案:

答案 0 :(得分:2)

您的代码应像这样将所有URL添加到列表中:

while (i < 165) {
    i = i + 1;
    ArrayList<String> url = new ArrayList<String>();
    url.add(driver.findElement(By.xpath("//*[@id='villages']/tbody/tr[" + i + "]/td[3]/a")).getAttribute("href"));
}

答案 1 :(得分:0)

  

静态字符串valueOf(arg)

返回给定参数的字符串表示形式。

和String类API没有这样的getAttribute方法

String Class API