Вы можете также:
XmlDocument Примеры находится на страницах MSDN, обеспечил
Возможное решение - использовать sel.get_eval()
и написать JS-скрипт, который возвращает список ссылок. что-то вроде следующего ответа:
selenium: Возможно ли использовать regexp в локаторах selenium
Вы можете использовать команду Selenium getAllLinks, чтобы получить массив идентификаторов ссылок на странице, которые затем можно было бы просмотреть и проверить href с помощью getAttribute, который принимает указатель, за которым следует @ и имя атрибута. Например, в Java это может быть:
String[] allLinks = session().getAllLinks();
List<String> matchingLinks = new ArrayList<String>();
for (String linkId : allLinks) {
String linkHref = selenium.getAttribute("id=" + linkId + "@href");
if (linkHref.matches("http://[^/]*\\d+.com")) {
matchingLinks.add(link);
}
}
Ответ, приведенный выше, вероятно, является правильным способом найти ВСЕ ссылки, соответствующие регулярному выражению, но я подумал, что было бы также полезно ответить на другую часть вопроса, как использовать regex в локаторах Xpath. Вам необходимо использовать функцию regex matches (), например:
xpath=//div[matches(@id,'che.*boxes')]
(при этом, конечно, будет щелкнуть div с 'id = checkboxes' или 'id = cheANYTHINGHEREboxes')
Однако имейте в виду, что функция совпадений не поддерживается всеми реализациями Xpath в собственном браузере (наиболее заметно, что использование этой функции в FF3 вызовет ошибку: недопустимый xpath [2]).
Если у вас проблемы с конкретным браузером (как я сделал с FF3) ), попробуйте использовать Selenium allowNativeXpath ("false") для переключения на интерпретатор JavaScript Xpath. Это будет медленнее, но похоже, что он работает с большим количеством функций Xpath, включая «совпадения» и «заканчивается на». :)