C# HTML敏捷包解析Div块
我需要解析网店里的商品——我需要它们的名称和价格。每个项块位于这些项的div目录中的不同div中。 所以我尝试了这个,它有点工作,但我更喜欢在1个循环中解析name和price。我该怎么做?谢谢C# HTML敏捷包解析Div块,c#,html,.net,html-agility-pack,C#,Html,.net,Html Agility Pack,我需要解析网店里的商品——我需要它们的名称和价格。每个项块位于这些项的div目录中的不同div中。 所以我尝试了这个,它有点工作,但我更喜欢在1个循环中解析name和price。我该怎么做?谢谢 var url = "http://bestaqua.com.ua/catalog/filtry-obratnogo-osmosa"; HtmlWeb web = new HtmlWeb(); HtmlDocument HtmlDoc = web.Load
var url = "http://bestaqua.com.ua/catalog/filtry-obratnogo-osmosa";
HtmlWeb web = new HtmlWeb();
HtmlDocument HtmlDoc = web.Load(url);
var RootNode = HtmlDoc.DocumentNode;
foreach (HtmlNode node in
HtmlDoc.DocumentNode.SelectNodes("//div[@class='catalog_blocks']"))
{
foreach (HtmlNode item_name in
node.SelectNodes("//div[@class='catalog_blocks-item-name']"))
{
string name = item_name.InnerText;
System.Diagnostics.Debug.Write("NAME :" + name + "\n" );
}
foreach (HtmlNode item_price in
node.SelectNodes("//span[@class='price-new']"))
{
string price = item_price.InnerText;
System.Diagnostics.Debug.Write("PRICE: " + price + "\n");
}
}
由于SelectNodes使用的是一个-表达式,所以您可以在类中使用|作为过滤器,这将导致单个集合循环。
请注意,然后仍然需要检查在for循环中实际选择了哪个元素