Es gibt eine HTML-Datei (deren Inhalt ich nicht kontrolliere), die mehrere input
Elemente mit demselben festen id
Attribut von enthält "search_query"
. Der Inhalt der Datei kann sich ändern, aber ich weiß, dass ich immer das zweite input
Element mit dem ID-Attribut erhalten möchte "search_query"
.
Ich brauche dazu einen XPath-Ausdruck. Ich habe es versucht, //input[@id="search_query"][2]
aber das funktioniert nicht. Hier ist eine XML-Beispielzeichenfolge, bei der diese Abfrage fehlgeschlagen ist:
<div>
<form>
<input id="search_query" />
</form>
</div>
<div>
<form>
<input id="search_query" />
</form>
</div>
<div>
<form>
<input id="search_query" />
</form>
</div>
Beachten Sie, dass das Obige nur ein Beispiel ist und der andere HTML-Code sehr unterschiedlich sein kann und die input
Elemente überall ohne konsistente Dokumentstruktur angezeigt werden können (außer dass ich garantiert bin, dass es immer mindestens zwei input
Elemente mit dem ID-Attribut von gibt "search_query"
).
Was ist der richtige XPath-Ausdruck?