Я использую Hpricot с селеном у меня есть этот HTML элемент ввода:избежать толстой кишки в поисках Xpath
<input id="foo:bar"/>
И я пытаюсь получить это значение с этим Xpath выражением:
source = Hpricot(@selenium.get_html_source)
source.search("//input[@id='foo:bar']")
но он не находит ничего из-за толстой кишки. Я видел, что выражение Xpath не может содержать никакого двоеточия. Я пытался избежать этого по-разному, но он не работает.
Есть ли способ избежать этого или избежать этой проблемы? Я не могу изменить значения в html, поэтому foo: bar должен быть таким образом, с двоеточием. Но мне нужно как-то найти этот элемент.
Любые идеи?
благодарит
Я не знаком с hpricot, поэтому не мог рассказать вам, как преобразовать в соответствующий синтаксис для этого, но он, похоже, поддерживает CSS-локаторы. – AlistairH
Я видел в документации HPricot, что вы можете использовать выражение XPath или css-локатор. Я пробовал ваше предложение, но это не сработало, не уверен, что это была моя ошибка, но я новичок в xpath и selenium. Я нашел обходное решение, чтобы получить уникальный элемент со второй частью идентификатора + другой атрибут. благодаря –