我花了几天时间试图弄清楚如何使用以下XMLIMPORT来获取第一个元素。
这是我试图抓取的网站的网址:https://www.grainger.com/product/DURACELL-Battery-5LE23
我试图在没有得到所有其他价格的情况下获得25.45美元的价格(17.36美元 $ 6.97,$ 32.80,$ 7.29,$ 19.09,$ 24.34,$ 149.05)。
我一直在使用:= IMPORTXML(“https://www.grainger.com/product/DURACELL-Battery-5LE23”,“// span [@ itemprop ='price'] / text()[1]”)并且它一直向我显示所有8个价格。
我做错了什么?
答案 0 :(得分:0)
看起来推荐的网页来源发生了变化。此时以下XPath查询
//span[@class = 'gcprice-value']
返回类似的结果:
$13.49 $12.14 $34.60 $30.50 $4.52 $13.49 $6.07 $160.50
为了只获得第一个价格,有几种选择:
normalize-space(//*/span[@class = 'gcprice-value'])
=Index(IMPORTXML(A1, A2),1)
//*[@id="addItemsToCartFromIdp"]/div[1]/div[1]/div/div[1]/p/span[2]
答案 1 :(得分:0)