перебирайте элементы, получайте URL-адреса, помещайте URL-адреса в список.селен ява - PullRequest
0 голосов
/ 02 апреля 2019
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")));
}

Я получаю следующую ошибку.

The method getAttribute(String) is undefined for the type String.

Я не совсем уверен, что происходит.Arraylist должен быть как массив строк?и getAttribute (String) является строкой ... Так что я понятия не имею, почему это не совместимо.Есть идеи?

Если я пытаюсь создать переменную для переноса значения, прежде чем добавить его в массив, я получаю эту ошибку.Невозможно вызвать add (String) для типа массива ArrayList []

Ответы [ 2 ]

2 голосов
/ 02 апреля 2019

Ваш код должен быть таким, чтобы добавить все 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"));
}
0 голосов
/ 02 апреля 2019

static String valueOf (arg)

Возвращает строковое представление заданного аргумента.

и API класса String не имеют метода getAttribute как такового

API класса String

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...