0

XPathの指定方法についての質問です。

詳細は公開できないのですが、あるWebシステム上でラジオボタンを選択したいのですが

そのラジオボタンには特にユニークなidやnameなどが付けられておらず、XPathで指定しようとすると

//div[@id="unique"]/input[1]のように、特定の親要素を探してその子要素inputタグの番号で指定するぐらいしか今のところ方法が見つかっていない状態です。

タグの番号で指定するのは将来のことを考えるとあまり採用したくないため、他に方法がないかお聞きしたいです。

参考例として下記サイトのラジオボタンを選択する際、「りんご」や「みかん」などのテキストをXPathとして指定できれば嬉しいのですがその方法がわかりません。

https://code-kitchen.dev/html/input/

//label[contains(text(),"りんご")] や //input[contains(text(),"りんご")] 等としてもヒットするものは無い状態です。

このサイトではラジオボタンのinputタグにvalue="apple"などが付けられていますので

//input[@type="radio" and @value="apple"]とすれば一意に特定できるのですが、

今回利用するWebシステムではtype="radio"以外はせいぜいvalue="0" または value="1"程度しかなく、これをキーとして指定するのはちょっと気が引ける状態です。

抽象化したHTMLを以下に記載します。

-----------------------------------------------------------------------

<div id="unique"> (実際にはdivタグではなく他のタグです)

 <input type="radio" value="0">

 "文字列A"

 <input type="radio" value="1">

 "文字列B"

</div>

winactor 回答した質問
回答とコメントは、会員登録(無料)で閲覧できるようになります。