У меня есть блок кода и вам нужно получить данные из него и попробовать разные версии команд xpath, но без успеха.Xpath получить элемент с условием
<div>
<div class="some_class">
<a title="id" href="some_href">
<nobr>1<br>
</a>
</div>
<div class="some_other_class">
<a title="name" href="some_href">
<nobr>John<br>
</a>
</div>
</div>
<div>
<div class="some_class">
<a title="id" href="some_href">
<nobr>2<br>
</a>
</div>
<div class="some_other_class">
<a title="name" href="some_href">
<nobr>John<br>
</a>
</div>
</div>
// and many blocks like this
Таким образом, эти блоки div одинаковы, за исключением того, что они отличаются по содержанию его подэлемента. Мне нужно XPATH запрос, чтобы получить HREF Джона, который <a title="id">
равен 1.
Я пытался что-то вроде этого:
//div[./div/nobr='1' AND ./div/nobr='John']
получить только DIV, который содержит данные мне нужно, и тогда не будет трудно чтобы получить Джон.
Кроме того, я сумел получить HREF Джона с:
//a[./nobr='John'][@title='name']/@href
, но таким образом он не зависит от значения от <a title="id"...>
элемента, но он должен зависеть от него.
Любые предложения?
Если вы хотите получить «John's href», почему бы вам не создать пример, где John's href отличается от других атрибутов «href», чтобы вы могли четко выразить то, что хотите? – kjhughes
Кроме того, имейте в виду, что XPath определяется только на хорошо сформированной разметке, которой не является ваш пример: существует несколько корневых элементов и несколько незакрытых элементов. – kjhughes
Это не о href, я ясно сказал, что мне нужен href, который находится внутри «суперэлемента» Джона, т. Е. John является подэлементом тега , который имеет атрибут href, в котором я нуждаюсь. Незакрытый элемент - это опечатка. Спасибо за ваши щедрые мелкие замечания :) –