我正在做一个简单的项目(更多的是web开发方面的练习),我很早就遇到了一个问题。在上下文中,我试图从亚马逊的几个不同类别的前三十名畅销产品的名字。我使用的不是传统的web刮板,而是google sheets的公式=importXML()
。此公式接受网站和XPath位置。
下面是一个示例网页:https://www.amazon.com/Best-Sellers-Beauty/zgbs/beauty/ref=zg_bs_nav_0
我浏览了一下检查器,发现它是一个很大的有序项目列表,在进一步挖掘之后,我认为我找到了产品的标题,并右键单击了>复制>复制XPath。
这是复制的XPath://*[@id="zg-ordered-list"]/li[1]/span/div/span/a/div
我把这个输入到google表单中,它返回#N/A,这并不奇怪,因为当我进入Chome控制台并输入:$x('//*[@id="zg-ordered-list"]/li[1]/span/div/span/a/div')
时,我得到了一个相当大的对象。
如果有人能帮我指出正确的XPath位置,我将非常感激。
最佳答案
您必须使用string
来获取文本。
'string(xpath)'
铬合金控制台:
$x('string(//*[@id="zg-ordered-list"]/li[1]/span/div/span/a/div)')
输出:
Philips Sonicare Diamond Clean Classic Rechargeable 5 brushing modes, Electric…
关于html - XPath地址不够详细,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55131941/