如何從嵌套中獲取文本

使用html敏捷包在外部html中標記?

c# html html-agility-pack xpath

我試圖從外部網站獲取一些文本。我想要獲得的文本嵌套在段落標記中。 div具有類值

HTML代碼段:

<div class="discription"><p>this is the text I want to grab</p></div>

當前的c#代碼:

public String getDiscription(string url)
{
    var web = new HtmlWeb();
    var doc = web.Load(url);


    var nodes = doc.DocumentNode.SelectNodes("//div[@class='discription']");

    if (nodes != null)
    {
        foreach (var node in nodes)
        {
            string Description = node.InnerHtml;
            return Description;
        }
    } else
      {
       string error = "could not find text";
       return error;
      }
}

我不明白的是xpath //div[@class='discription']的語法//div[@class='discription']我知道xpath應該是什麼錯誤?

一般承認的答案

使用//div[@class='discription']/p

分解:

//div                    - All div elements
[@class='discription']   - With a class attribute whose value is discription
/p                       - Select the child p elements



許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因
許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因