次のHTMLスニペットから「テキストデータ3」を取得するXPathを理解しようとしています
<span class="inner-span">
Text-data 1
<br>
<span>Text Data 2</span> text Data 3
</span>
これまでのところ、クラス「inner-span」のスパンにつながる次のXpathを試しました。
/html/body/div/div[4]/div[2]/div[2]/div/div[2]/div/span[@class="inner-span"]
しかし、Xpathに何を追加すればよいかわからないため、上記のHtmlスニペットからテキスト「textData3」しか表示されません。ありがとう
特定のケースでは、このXPathクエリは機能します。
normalize-space(//span[@class="inner-span"]/text()[last()])
これで試してみました オンラインテスター そして結果は次のとおりです。
/html/body/div/div[4]/div[2]/div[2]/div/div[2]/div/span[@class="inner-span"]/text()[last()]
を選択してテキストノードを取得するか(先頭と末尾に空白があります)、normalize-space(/html/body/div/div[4]/div[2]/div[2]/div/div[2]/div/span[@class="inner-span"]/text()[last()])
で文字列を返すXPathを使用できます。