XPath查询仅获取每行中“”之前的元素

时间:2019-03-03 10:28:09

标签: xml xpath google-sheets xquery

我正在尝试获取网站的一些数据。我现在使用的查询是:

//div[@class = 'TimeStamp']
Result:
2019-03-02 5:50:46
2019-03-02 5:08:52
2019-03-02 4:09:54
2019-03-02 1:52:43
2019-03-02 0:55:49
2019-03-02 0:11:04
2019-03-01 23:34:04
2019-03-01 7:01:14
2019-03-01 6:23:31
2019-03-01 5:41:01

我唯一想要的是所有日期:

2019-03-02
2019-03-02
etc

我试图通过分别选择每一行,然后使用substring-before和之后尝试将它们全部并置在一起来完成此操作,

concat(
    substring-before(
        (//div[@class = 'TimeStamp'])[1], ' '), 
    ' ', 
    substring-before(
        (//div[@class = 'TimeStamp'])[2], ' ')
)

Result:
2019-03-02 2019-03-02

这并不能完全实现我将每个日期都放在新行中的目标。此外,这必须针对 n 条不同的行发生,然后我的方法确实不是最佳方法。

您知道我可以如何对此进行更改吗?

我不确定是否会有所作为,但我正在使用Google电子表格

1 个答案:

答案 0 :(得分:0)

使用 app.set('view engine', 'ejs'); app.set('views', path.resolve(__dirname, 'views')); 公式来修剪不必要的内容,例如:

INDEX()

或者也许:

=INDEX(IMPORTXML("URL", "//div[@class = 'TimeStamp']") , , 1)

=ARRAYFORMULA(INDEX(SPLIT(IMPORTXML("URL", "//div[@class = 'TimeStamp']"), " ") , , 1))

0