Как выбрать все имена классов страницы с помощью java?

-4

Я использую селен (с java) для поиска всех имен классов страницы, а затем использую Regex только для сохранения имени класса (-ов), у которых есть "знаки различия".

Я попытался использовать приведенный ниже код с регулярным выражением для поиска classNames, в котором упоминается "знак различия", но он не возвращает никакого результата.

System.out.println(driver.findElements(By.className(".*\\binsignia\\b.*")).get(1).getAttribute("src"));

спросил(а) 2018-02-06T13:41:00+03:00 2 года, 8 месяцев назад
0
-4

Вы не можете использовать Regex внутри строки локатора. Вы можете использовать селектор CSS и найти все элементы, содержащие "знаки различия" в имени класса.

System.out.println(driver.findElements(By.cssSelector("[class*='insignia']")).get(1).getAttribute("src"));

Ссылка на селектор CSS

ответил(а) 2018-02-06T18:51:00+03:00 2 года, 8 месяцев назад
-4

driver.findElements(By.xpath("//*[contains(@class,'.*\\binsignia\\b.*')]")

собирается вернуть элементы webElements, содержащие insignia класса

ответил(а) 2018-02-06T14:10:00+03:00 2 года, 8 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема