以下に示すようなマークアップがある場合、親 div から 8 番目の div のそれぞれに個別にアクセスし、for ループを使用してその ID を出力したいと考えています。
<div class=abc>
<div id="parent">
<div id="one">
<div id=........</div>
<div id=........</div>
<div id="two">
<div id=........</div>
<div id=........</div>
<div id="three">
<div id=........</div>
<div id=........</div>
<div id="four">
<div id=........</div>
<div id=........</div>
<div id="five">
<div id=........</div>
<div id=........</div>
<div id="six">
<div id=........</div>
<div id=........</div>
<div id="seven">
<div id=........</div>
<div id=........</div>
<div id="eight">
<div id=........</div>
<div id=........</div>
</div>
</div>
しかし、私が(Javaで)印刷している間、8つのdivのそれぞれの下にあるすべてのdiv idも印刷されています.1つのforループで各8つのdivのidのみを取得するにはどうすればよいですか? Selenium Web Driver を使用して Web サイトを自動化しています。私はこのように試しました:
List<WebElement> eightdivs = driver.findElements(By.cssSelector("#abc div:nth-child(n)"));
for(WebElement eachdiv : eightdivs)
{
System.out.println(eachdiv.getAttribute("id"));
}