如何使用 HtmlAgilityPack - C# 获取 <div> 的内容
How to get content of <div> with HtmlAgilityPack - C#
我有html来源:
<div class="lit-plot">
<b class="red">خلاصه داستان :</b>
Content
</div>
我想用 HtmlAgilityPack 获取 <div>
的值(不是 <b>
,只有字符串 "Content")。最好的方法是什么?
这就是我在做什么。 movieDesHTMLSource
给出 html 来源。我不知道如何访问 InnerHtml
!
string movieDes;
//Exctact the movie's description HTML source
var movieDesHTMLSource = new HtmlAgilityPack.HtmlDocument();
movieDesHTMLSource.LoadHtml(postPageHTMLDes[95].InnerHtml);
var src = movieDesHTMLSource.DocumentNode.SelectNodes("//div[contains(@class,'lit-plot')]");
使用 Xpath text()
仅检索 div 标签内的文本。
var html = @"<body>
<div class='lit-plot'>
<b class='red'>خلاصه داستان :</b>
Content
</div>
</body>";
var htmlDoc = new HtmlDocument();
htmlDoc.LoadHtml(html);
var htmlNodes = htmlDoc.DocumentNode.SelectNodes("//div[contains(@class,'lit-plot')]/text()");
foreach (HtmlNode node in htmlNodes)
{
Console.WriteLine(node.InnerText.Trim());
}
Fiddle 这里:https://dotnetfiddle.net/mXFs8k
我建议您将您的内容包装在 <p>
或 <span>
等标签中,然后您可以使用 HtmlAgilityPack 轻松定位它。
我有html来源:
<div class="lit-plot">
<b class="red">خلاصه داستان :</b>
Content
</div>
我想用 HtmlAgilityPack 获取 <div>
的值(不是 <b>
,只有字符串 "Content")。最好的方法是什么?
这就是我在做什么。 movieDesHTMLSource
给出 html 来源。我不知道如何访问 InnerHtml
!
string movieDes;
//Exctact the movie's description HTML source
var movieDesHTMLSource = new HtmlAgilityPack.HtmlDocument();
movieDesHTMLSource.LoadHtml(postPageHTMLDes[95].InnerHtml);
var src = movieDesHTMLSource.DocumentNode.SelectNodes("//div[contains(@class,'lit-plot')]");
使用 Xpath text()
仅检索 div 标签内的文本。
var html = @"<body>
<div class='lit-plot'>
<b class='red'>خلاصه داستان :</b>
Content
</div>
</body>";
var htmlDoc = new HtmlDocument();
htmlDoc.LoadHtml(html);
var htmlNodes = htmlDoc.DocumentNode.SelectNodes("//div[contains(@class,'lit-plot')]/text()");
foreach (HtmlNode node in htmlNodes)
{
Console.WriteLine(node.InnerText.Trim());
}
Fiddle 这里:https://dotnetfiddle.net/mXFs8k
我建议您将您的内容包装在 <p>
或 <span>
等标签中,然后您可以使用 HtmlAgilityPack 轻松定位它。