如何在Google表格中使用XPath从Kick Starter中获取文本

时间:2018-04-29 23:58:47

标签: xml xpath google-sheets

我正在尝试从Kick Starter中提取位置数据,以添加到我现有的数据集中。

目前我正在使用Google表格和XPath来抓取各种元素,但我只是遇到了该位置的文本元素。

看起来如下所示:

A1 = https://www.kickstarter.com/projects/1201626825/tori-scott-live-at-the-edinburgh-fringe-festival?ref=home_new_and_noteworthy
A2 = //a[@class="nowrap navy-700 flex items-center medium type-12"]/text()
IMPORTXML(A1, $A$2)

奇怪的是,无论我是否放入text()元素,我都会得到一个导入的内容为空错误。

我也有:

  • 成功抓取整个列表元素(提升状态,类别,位置)
  • 尝试使用空内容错误提取确切位置

1 个答案:

答案 0 :(得分:0)

这个答案怎么样?我认为你的情况有几个答案。所以请把它想象成其中之一。

第1部分:

=INDEX(IMPORTXML(A1, "//div[@class='block-lg hide']//div[@class='NS_projects__badges mb3']//div[@class='border-top border-bottom border-top-none-md border-none-lg nested-full-width-xs nested-full-width-sm nested-full-width-md mb4 mb5-sm mb0-md']//div[@class='grid-row']//div[@class='col-sm-22-24 col-offset-sm-1-24 col-offset-md-0-24']//div[@class='py2 py3-lg flex']//div[@class='flex items-center auto-scroll-x']"), 6)

=INDEX(IMPORTXML(A1, "//div[@class='block-lg hide']//div//div//div//div//div//div"), 6)

第2部分:

=INDEX(IMPORTXML(A1, "//div[@class='col-full']//div[@class='NS_projects__badges mb3']//div[@class='border-top border-bottom border-top-none-md border-none-lg nested-full-width-xs nested-full-width-sm nested-full-width-md mb4 mb5-sm mb0-md']//div[@class='grid-row']//div[@class='col-sm-22-24 col-offset-sm-1-24 col-offset-md-0-24']//div[@class='py2 py3-lg flex']//div[@class='flex items-center auto-scroll-x']"), 6)

=INDEX(IMPORTXML(A1, "//div[@class='col-full']//div//div//div//div//div//div"), 6)

结果:

Edinburgh, UK

注意:

  • HTML中有@class="nowrap navy-700 flex items-center medium type-12"的两部分。我不确定你想要的部分。所以在这里,我想提出两个部分。
  • 假设https://www.kickstarter.com/projects/1201626825/tori-scott-live-at-the-edinburgh-fringe-festival?ref=home_new_and_noteworthy位于单元格A1中。

如果我误解了你的问题,我很抱歉。