2016-10-31 59 views
-4

<a class="product-name" href="http:xyz" title="Polac pineapple slices 3kg">Polac pineapple slices 3kg</a> <div class="price-box"> <span class="regular-price" id="product-price-5489"> <span class="price">Rs 665</span> </span>如果一个HTML标签匹配,则另一标签应使用htmlagilitypack

我想从跨度标签得到的价格被抓取,但是匹配时,它应该提供特定项目的价格。就像如果一个标签有内部文本Polac菠萝那么它应该返回665卢比以下 代码是我使用

` 
var aTags = document.DocumentNode.SelectNodes("//a"); 
       var nextTags = document.DocumentNode.SelectNodes("//span"); 
if (aTags != null) 
       { 
        foreach (var aTag in aTags) 
        { 
         s += counter + ". " + aTag.InnerText + "<br>"; 
         //s += aTag.InnerText; 
         if (aTag.InnerText == "Polac pineapple") 
         { 
          brandcheck = true; 
          find += aTag.InnerText + " "; 

          foreach (var nextTag in nextTags) 
          { 
           //s += counter + ". " + nextTag.InnerText + "<br>"; 
           s += nextTag.InnerText; 
           if (nextTag.InnerText.Contains("Rs")) 
           { 
            brandcheck = true; 
            find = nextTag.InnerText + " "; 
           } 
          }` 
+0

你可以添加你的示例代码 – ChrisBint

+0

@ChrisBint签出,我已经添加了代码! –

回答

0

你能更准确?

您可以使用“id”。

<span id="thisspan">A uniquely identifiable element.</span> 

id属性为文档中的元素提供唯一标识符。它可以被一个元素用来创建一个到这个特定元素的超链接。

id属性最重要的方面是它必须是绝对唯一的。与可能将相同值应用于页面中的许多元素的class属性不同,应用于元素的id不能与在同一页面上任何其他位置使用的id匹配。

id属性值必须以罗马字母(a-z或A-Z)中的一个字母开头;这可以跟随字母(a-z或A-Z),数字(0-9),连字符( - ),下划线(_),冒号(:)和句点(。)的任意组合。 id值是区分大小写的,因此这是我和这是我将被视为在同一个网页上单独和唯一可识别的元素。

+0

我很感谢你的回复.. 实际上有多个相同id的span:/ like

相关问题