0

HTMLAgilityPack を使用して、特定のノードのリスト内のテキストを取得しています。基本的に、次の HTML を含む HTML ページを読み上げています。

<div class="video-overview yt-grid-fluid">
   <h3 class="video-title-container">
       <span class="yt-badge-std">
            WATCHED
        </span>
      <a href="/watch?v=S5FCdx7Dn0o&amp;list=FLArRQZAMoAgECBIOn08gNeA&amp;index=1" title="Bob Marley - Buffalo soldier" class="yt-uix-tile-link yt-uix-sessionlink" data-sessionlink="ei=c9tWUb3eJaOzhgG6kYHYAg&amp;feature=plpp_video">
        <span class="title video-title" dir="ltr">Bob Marley - Buffalo soldier</span>
      </a>
   </h3>

      <p class="video-details">
        <span class="video-owner">
             by <span class="yt-user-name " dir="ltr">Pgroenberg</span>
        </span>

          <span class="video-view-count">
            44,342,136 views
          </span>
      </p>
  </div>

の中にある「ボブ・マーリー - バッファローの兵士」というテキストを取得したい<span class="title video-title" dir">

正しいパターンが見つからないようです:

string expression = @"//span[@class='title video-title' and @dir='ltr']/text()";
HtmlNodeCollection hnc = htmlDoc.DocumentNode.SelectNodes(expression);

式と一致するノードがないため、hnc は null になります。表現がうまくいかないのはなぜですか?

4

0 に答える 0