Google 工作表 IMPORTXML 查询

Google Sheets IMPORTXML query

我正在使用 Google 表格作为网络抓取工具。

我一直在使用这个 IMPORTXML

=importxml(A1, "//div[@class='review-content']//text()")

这是结果

Row1: {"publishedDate":"2019-01-05T22:19:28Z","updatedDate":"null","reportedDate":"null}

Row2: {"publishedDate":"2018-12-10T22:19:28Z","updatedDate":"null","reportedDate":"null}

Row3: {"publishedDate":"2018-12-09T22:19:28Z","updatedDate":"null","reportedDate":"null}

但我无法弄清楚如何只获取 "publishedDate" 值。 示例:

Row1: 2019-01-05T22:19:28Z

Row2: 2018-12-10T22:19:28Z

Row3: 2018-12-09T22:19:28Z

关于我可能遗漏的任何想法

这3个样本怎么样?我从你的问题样本中想到了它们。我认为您的情况有几个答案。因此,请将其视为其中的 3 个样本。

它假设 URL 放在单元格 "A1" 中。

示例 1:

=ARRAYFORMULA(MID(IMPORTXML(A1, "//div[@class='review-content']//text()"),19,20))
  • 当每个值的字符串长度为常量时,这样如何?
    • 值由 MID() 检索。

示例 2:

=ARRAYFORMULA(INDEX(SPLIT(IMPORTXML(A1, "//div[@class='review-content']//text()"),"""",TRUE,TRUE),,4))
  • 当每个值的位置都是常量时,这个怎么样?
    • 值由 SPLIT()INDEX() 检索。

示例 3:

=ARRAYFORMULA(REGEXEXTRACT(IMPORTXML(A1, "//div[@class='review-content']//text()"),"publishedDate"":""(\w.+?)"""))
  • 当每个值的模式都是常量时,这个怎么样?
    • 值由 REGEXEXTRACT() 检索。

参考文献:

如果这些不是您想要的结果,我深表歉意。到时候为了正确复现你的情况,能否提供一下你用的@Rubén as @Rubén says?