Il existe un fichier HTML (dont je ne contrôle pas le contenu) qui contient plusieurs input
éléments tous avec le même id
attribut fixe de "search_query"
. Le contenu du fichier peut changer, mais je sais que je veux toujours obtenir le deuxième input
élément avec l'attribut id "search_query"
.
J'ai besoin d'une expression XPath pour ce faire. J'ai essayé //input[@id="search_query"][2]
mais ça ne marche pas. Voici un exemple de chaîne XML où cette requête a échoué:
<div>
<form>
<input id="search_query" />
</form>
</div>
<div>
<form>
<input id="search_query" />
</form>
</div>
<div>
<form>
<input id="search_query" />
</form>
</div>
Gardez à l'esprit que ce qui précède n'est qu'un exemple et que l'autre code HTML peut être très différent et que les input
éléments peuvent apparaître n'importe où sans structure de document cohérente (sauf que je suis assuré qu'il y aura toujours au moins deux input
éléments avec un attribut id de "search_query"
).
Quelle est l'expression XPath correcte?