通过XPath将表格数据导出到Google电子表格

时间:2014-09-25 15:29:15

标签: xpath google-sheets row

我尝试使用importxml命令和XPath将表数据导出到Google Spreadsheet,但它不起作用。出现解析器错误,表示解析公式时出错。

我想从此页面获取移动PI:http://ausweisung.ivw-online.de/index.php?i=1121&a=a9170

我尝试了这样的命令:=IMPORTXML("http://ausweisung.ivw-online.de/index.php?i=1121&a=a9170"; "//*[@id="ibody"]//div[1]/div/div[3]/div[2]/table/tbody/tr[4]/td[5]")

正如下面的评论中所提到的,我还希望执行更具动态性的请求。我想搜索特定的字符串,然后跳转到我选择的列。

2 个答案:

答案 0 :(得分:0)

由于您在其他双引号内使用双引号("),因此存在公式错误。您必须在由双引号分隔的字符串中使用单引号。

=IMPORTXML("http://ausweisung.ivw-online.de/index.php?i=1121&a=a9170", "//*[@id='ibody']//div[1]/div/div[3]/div[2]/table/tbody/tr[4]/td[5]")

结果仍为#N/A,可能是因为您的路径表达式与任何内容都不匹配。

修改

  

我正在寻找正确的xpath命令来获取(在这种情况下)数据'11 .824.563'。

检索此值的正确表达式为:

=IMPORTXML("http://ausweisung.ivw-online.de/index.php?i=1121&a=a9170", "//div[@class='statistik']/div[@class='uebersicht']/table/tr[3]/td[2]")

但不幸的是,IMPORTXML非常错误且不可靠,因此仍然会产生“#N / A”。这似乎适用于旧版Google Spreadsheets:

https://productforums.google.com/forum/#!msg/docs/yWPaNDK0Kpg/3UIIeDA0SAIJ

答案 1 :(得分:0)

感谢Google产品论坛的用户,我得到了正确的公式来正确解决我的请求。

=arrayformula( value( regexreplace( query( importHTML("http://ausweisung.ivw-online.de/index.php?i=112&mz_szm=201408"; "table"; 3) & ""; "select Col5 where Col3 = 'GLAMOUR (Smartphone-Apps)' "; 0 ); "[^\d]"; "" ) ) )

此请求正在查找指定表中的特定字符串,并从此行的第五列中获取数据。