0

私は HTMLAgility で次を解析しようとしています:

<span class="button">
<a role="anotherbutton" href="/gofor/15555445554/be?ref=t">Me</a>
</span>

このようなもので:

foreach (HtmlNode link in doc.DocumentNode.SelectNodes("//span[@class = 'button']/a[@role = 'anotherbutton']"))
        {
            string att = link.Attributes["href"].Value;
            txt_htmlResults.Text += att.ToString() + "\n";      
        }

ただし、常に null 例外が発生します...私の意図は、15555445554 を取得することです。誰か助けてください。前もって感謝します

4

1 に答える 1

1

私のCドライブのテキストファイルにそれを投げました:

    HtmlDocument doc = new HtmlDocument();
    doc.Load("C:\\temp\\stackhtml.html");
    //string link = doc.DocumentNode.SelectSingleNode("//span[@class='button']//a").OuterHtml;
    string rawLink = doc.DocumentNode.SelectSingleNode("//span[@class='button']//a").GetAttributeValue("href", "unkown");
    Console.WriteLine("rawLink: " + rawLink);
    string cleanedLink = rawLink.Substring(rawLink.IndexOf("r/")+2,rawLink.IndexOf("/b")-rawLink.IndexOf("r/")-2);
    Console.WriteLine("cleanedLink: " + cleanedLink);
    Console.ReadLine();

結果:

ここに画像の説明を入力

于 2014-10-25T20:40:31.773 に答える