次のクエリを使用しています。
//*[contains(concat(" ", normalize-space(@class), " "), " sub-category-wrap ")][1]/dl/dt
これにより、最初のものが選択され、そのコンテンツ.sub-category-wrapが返され/dl/dtます。理想的には、これは次のようになります。
YarnMice
何らかの理由で、次のように返されます。
YarnMiceFast TiresFancy Paint
そのため、何らかの理由で、dt両方の.clear-wrap要素の からコンテンツを取得しています。dtn 番目からを選択することができないようです.sub-category-wrap。
注: xpath クエリの[1]セレクターは、実際にはコード内の変数であるため、提示するソリューションではそのことに留意してください。
<div class="clear-wrap">
<div class="sub-category-wrap">
<h3>Cats</h3>
<dl>
<dt>Yarn</dt>
<dd><!-- Content --> </dd>
<dt>Mice</dt>
<dd><!-- Content --></dd>
</dl>
</div>
<div class="sub-category-wrap">
<h3>Dogs</h3>
<dl>
<dt>Kibbles</dt>
<dd><!-- Content --> </dd>
<dt>Drool</dt>
<dd><!-- Content --></dd>
</dl>
</div>
</div>
<div class="clear-wrap">
<div class="sub-category-wrap">
<h3>Cars</h3>
<dl>
<dt>Fast Tires</dt>
<dd><!-- Content --> </dd>
<dt>Fancy Paint</dt>
<dd><!-- Content --></dd>
</dl>
</div>
<div class="sub-category-wrap">
<h3>Trucks</h3>
<dl>
<dt>Mud Tires</dt>
<dd><!-- Content --> </dd>
<dt>Loud Pipes</dt>
<dd><!-- Content --></dd>
</dl>
</div>
</div>