0

xpath で親ノードに戻るトラバースについて質問しました

期待通りの返事が返ってきたが、今後の展開にもう一つ疑問が。以下の HTML を使用:

<ul><li class="section">BROADCASTING</li>
<ul>
<li class="subsection"></li>
<li class="circle"><a href="/article/95242-STATION_BREAK.php">STATION BREAK</a></li>
<li class="circle"><a href="/article/98142-Labor_pains_hunger_pangs.php">Labor pains, hunger pangs</a></li>
<li class="circle"><a href="/article/101509-Wake_up_call_for_Dream_Team.php">Wake-up call for Dream Team</a></li>
<li class="circle"><a href="/article/136139-News_crew_turns_rescuer.php">News crew turns rescuer</a></li>
<li class="circle"><a href="/article/136140-Chopper_safety_had_been_challenged.php">Chopper safety had been challenged</a></li>
<li class="circle"><a href="/article/136142-Nielsen_adds_Dayton_.php">Nielsen adds Dayton..</a></li>
<li class="circle"><a href="/article/136143-Mondale_watch.php">Mondale watch</a></li>
<li class="circle"><a href="/article/136144-Those_70s_clearances.php">Those 70s clearances</a></li>
<li class="circle"><a href="/article/136145-Oscar_goes_to_ABC.php">Oscar goes to ABC</a></li>
<li class="circle"><a href="/article/136146-Hearst_Argyle_gives_a_green_light.php">Hearst-Argyle gives a green light</a></li>
<li class="circle"><a href="/article/136147-Finding_Geena_Davis.php">Finding Geena Davis</a></li>
<li class="circle"><a href="/article/136148-Syndication_Wrap_up.php">Syndication Wrap-up</a></li>
<li class="circle"><a href="/article/136149-CBS_TV_news_pioneer_dies_at_86.php">CBS TV news pioneer dies at 86</a></li>
<li class="circle"><a href="/article/136150-New_York_anchor_remembered.php">New York anchor remembered</a></li>
<li class="circle"><a href="/article/136151-News_sharing_in_West_Virginia.php">News sharing in West Virginia</a></li>
<li class="circle"><a href="/article/136152-News_dropping_in_Orlando.php">News dropping in Orlando</a></li>
<li class="subsection">Null</li>
<li class="circle"><a href="/article/136141-GET_WITH_THE_PROGRAM.php">GET WITH THE PROGRAM</a></li>
<li class="subsection">PEOPLE'S CHOICE</li>
<li class="circle"><a href="/article/97423-Syndication_as_branding.php">Syndication as branding</a></li>
</ul>
</ul>

今の助けを借りて、@Alexすべてのセクションとサブセクションを取得できます。次に、サブセクション内の記事が必要でした。自分で試してみて、期待される出力を受け取りましたが、タグの後に、タグ内の記事の情報を含む<li class="subsection">個別のタグがあり、タグ自体が個別のノードであるため (ノード内ではありません)、特定のサブセクション内の記事を取得することはできません。最初のサブセクションのすべての記事を取得し、2 番目のサブセクションでは 3 番目のサブセクションの記事も取得します。これ以上サブセクションがないため、最後のサブセクション。<li class="circle">anchorclass="circle"class="subsection"

特定のサブセクション内の記事を制限する方法を教えてください。class="subsection"タグを取得すると、そのサブセクションの記事のフェッチを停止し、別のサブセクションのフェッチを開始する必要があります。

4

1 に答える 1

1

次のようなものを使用できます。

//ul/ul[preceding::li[@class='section' and .=\"BROADCASTING\"]]/li[@class='subsection' and .=\"\"]/following::li[@class='circle' and following::li[@class='subsection' and .=\"Null\"]]/a

<li class='subsection'></li>との間のすべてのアンカーを取得します<li class='subsection'>Null</li>。との間のリンクを取得するには、ここで必要な値を置き換える必要があります<li class='subsection'>Null</li>: 。<li class='subsection'>PEOPLE'S CHOICE</li>li[@class='subsection' and .=\"{...}\"

最後のサブセクションの下にアンカーを取得するには、次の式で十分です: //ul/ul[preceding::li[@class='section' and .=\"BROADCASTING\"]]/li[@class='subsection' and .=\"PEOPLE'S CHOICE\"]/following::li[@class='circle']/a".

あなたがその考えをつかんだことを願っています。

于 2013-10-28T20:35:36.593 に答える