Existe um arquivo HTML (cujo conteúdo eu não controlo) que possui vários inputelementos, todos com o mesmo idatributo fixo de "search_query". O conteúdo do arquivo pode mudar, mas eu sei que sempre quero obter o segundo inputelemento com o atributo id "search_query".
Eu preciso de uma expressão XPath para fazer isso. Eu tentei, //input[@id="search_query"][2]mas isso não funciona. Aqui está um exemplo de string XML em que esta consulta falhou:
<div>
<form>
<input id="search_query" />
</form>
</div>
<div>
<form>
<input id="search_query" />
</form>
</div>
<div>
<form>
<input id="search_query" />
</form>
</div>
Lembre-se de que o exposto acima é apenas um exemplo e o outro código HTML pode ser bem diferente e os inputelementos podem aparecer em qualquer lugar sem uma estrutura de documento consistente (exceto que eu estou garantido que sempre haverá pelo menos dois inputelementos com o atributo id "search_query")
Qual é a expressão XPath correta?