如何使用>运算符编写XPath?

时间:2018-12-26 12:53:18

标签: selenium selenium-webdriver xpath operators

我正尝试使用以下XPath将商品添加到价格为>(大于$ 35)的购物车中

//div[@class='m-product-mini']//span[contains(text()>'$35.00')] 

但是使用此XPath我无法识别价格值,以下是HTML代码。

<div class="m-product-mini">
    
    <div data-id="EF_TLR04-1A-P_EF_TLR04-1A">
        <!-- main-image -->
        <div class="m-product-mini-image">
            <a href="#" class="btn btn-light btn-quickview no-mobile" style="opacity: 0;">Quick view</a> 
                <a href="/bouquet/stunning-statement-bouquet/p_ef_tlr04-1a?skuId=EF_TLR04-1A&amp;zipMin=">
            </a>
        </div>
         
             <span class="m-product-mini-merchandising-icon">
                 <img src="new.jpg" alt="New Flower Arrangement by Florence's Flowers &amp; Gifts">
             </span>
          
        <a href="/bouquet/stunning-statement-bouquet/p_ef_tlr04-1a?skuId=EF_TLR04-1A&amp;zipMin=" class="m-category-flower-link centered text-large"><h2 class="m-category-flower-link-h2">Stunning Statement Bouquet</h2></a>
                 
        
        <a href="/bouquet/stunning-statement-bouquet/p_ef_tlr04-1a?skuId=EF_TLR04-1A&amp;zipMin=" class="m-product-mini-price "><span>$36.99</span> <span class="priceTag-discount"></span></a>
    
    </div>
    </div>

1 个答案:

答案 0 :(得分:1)

尝试在XPath下面使用以获得所需的输出:

//div[@class='m-product-mini']//span[number(substring-after(text(), '$')) > 35] 

请注意,您需要

  • 摆脱"$"号,所以使用substring-after(text(), '$')
  • 将结果转换为整数,因此使用number()