【问题标题】:trying different Xpaths none of them work尝试不同的 Xpath,它们都不起作用
【发布时间】:2020-08-09 07:29:37
【问题描述】:

我的目标是从https://www.tipranks.com/stocks/amzn/stock-analysis 导入分数,你可以看到这里的分数是八角形图像中显示的“10”,这个分数对于不同的公司是不同的,例如https://www.tipranks.com/stocks/roku/stock-analysis 的分数是“5 ”。

当我检查我看到的元素时:

10

所以我正在使用 googledocs 和 Importxml 函数,我尝试了很多不同的 Xpath,但都返回 #N/A

我已经尝试了以下作为 xpath:

//时间跨度

//tspan[1]

//文本/tspan[1]

//文本[1]/tspan[1]

//svg/text[1]/tspan[1]

我什至尝试过输入完整的 xpath

/html/body/div[1]/div/div/main/div/div/article/div[2]/div/main/div[1]/div[2]/section[1]/div [1]/div[1]/div/svg/text/tspan

请有人指导我哪里出错了。

我在谷歌文档上运行的功能是:

=IMPORTXML(A1,A2)

其中 A1 是 https://www.tipranks.com/stocks/amzn/stock-analysis 而A2是上面提到的xpath之一

【问题讨论】:

    标签: html css xml xpath google-sheets-importxml


    【解决方案1】:

    这些 xpath 将为您工作

    //*[@text-anchor='middle']
    

    //*[@x='100']
    

    【讨论】:

      【解决方案2】:

      它不适用于Google Sheets,因为该网站使用Javascript 来显示数据。你可以使用Selenium 来抓取这个或类似的工具。

      如果你真的想用 GS 做这个,你可以使用ImportfromWeb addon(免费计划中请求的数量是有限的)。你必须指定使用`jsrendering。

      以下 XPath 将选择您要查找的内容:

      //div[contains(@class,"active")]/span
      

      C6 中的公式:

      =IMPORTFROMWEB(C2;C3;B4:C4)
      

      输出:

      【讨论】:

        猜你喜欢
        • 2023-01-08
        • 1970-01-01
        • 2013-02-28
        • 1970-01-01
        • 2018-09-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多