XPath不返回任何内容,在其他任

时间:2013-03-15 11:51:40

标签: c# html xpath html-agility-pack

尝试使用XPath解析此代码:http://pastebin.com/Un9x1BRX 操作页面:http://fonix.dyndns.org:40000/soasc/

我想从这部分获得作曲家的名字:

          <td>
            <div class="hl3">
              <a href=
              "index.php?av=0&amp;sb=SOASC&amp;sc=Markus+Pyykk%F6+%28Mankeli%29&amp;clist=1&amp;did=">
              +</a>
            </div><a href=
            "index.php?av=0&amp;sb=SOASC&amp;sc=Markus+Pyykk%F6+%28Mankeli%29&amp;clist=1&amp;did=">Markus
            Pyykk&#246; (Mankeli)</a>
          </td>

这样它就会返回Markus Pyykkö (Mankeli)

我的XPath ./tr[@class = 'table1' or @class = 'table2']/td/a在每个在线验证器中都能正常工作,但SelectNodes()不返回任何内容。这是我的错还是Agility Pack坏了?

编辑:我正在循环播放这样的曲目:

HtmlNodeCollection songs = doc.DocumentNode.SelectNodes("//*[@class = 'table1' or @class = 'table2']");

            foreach (HtmlNode song in songs)
            {
and so on

1 个答案:

答案 0 :(得分:0)

你确定吗?以下代码适用于我,

var w = new HtmlWeb();
var d = w.Load("http://fonix.dyndns.org:40000/soasc/");
var xpath = "//tr[@class ='table1' or @class = 'table2']/td/a";
var anchors = d.DocumentNode.SelectNodes(xpath);