HTMLAgilityPack - 通过 class 获取 class 中的元素
HTMLAgilityPack - Get element in class by class
我希望从下面显示的 'listicle-page' class 中的 H2(突出显示的)元素中获取值。目前代码获取 DIV 元素中的所有值,而我只需要获取 H2 中包含的值 class 下面。
考虑以下 HTML:
请看下面的代码 -
private void getFact()
{
HtmlAgilityPack.HtmlWeb web = new HtmlAgilityPack.HtmlWeb();
HtmlAgilityPack.HtmlDocument doc = web.Load("https://www.rd.com/culture/interesting-facts/");
var headerNames = doc.DocumentNode.SelectNodes("//div[@class='listicle-page']").ToList();
foreach(var item in headerNames)
{
MessageBox.Show(item.InnerText);
}
}
您的 XPath //div[@class='listicle-page']
匹配 div
节点及其所有后代。如果您只需要 select 子 h2
节点,则通过添加 /h2
:
明确指定它
//div[@class='listicle-page']/h2
我希望从下面显示的 'listicle-page' class 中的 H2(突出显示的)元素中获取值。目前代码获取 DIV 元素中的所有值,而我只需要获取 H2 中包含的值 class 下面。
考虑以下 HTML:
请看下面的代码 -
private void getFact()
{
HtmlAgilityPack.HtmlWeb web = new HtmlAgilityPack.HtmlWeb();
HtmlAgilityPack.HtmlDocument doc = web.Load("https://www.rd.com/culture/interesting-facts/");
var headerNames = doc.DocumentNode.SelectNodes("//div[@class='listicle-page']").ToList();
foreach(var item in headerNames)
{
MessageBox.Show(item.InnerText);
}
}
您的 XPath //div[@class='listicle-page']
匹配 div
节点及其所有后代。如果您只需要 select 子 h2
节点,则通过添加 /h2
:
//div[@class='listicle-page']/h2