我正在使用Google表格通过IMPORTXML
函数抓取网站表格。最初的XPath显然仅引用该表中的单个单元格,因此我想知道如何更改语法以仅导入第二列的前100行。
我尝试使用IMPORTHTML,但是语法似乎更加有限。
=importxml(B4,"//*[@id='historical-data']/div/div[2]/table/tbody/tr[1:100]/td[2]")
上面的代码给出以下错误:
“无法解析导入的XML内容。”
答案 0 :(得分:1)
[1:100]
语法不起作用。请尝试使用[position()<=100]
:
=importxml(B4,"//*[@id='historical-data']/div/div[2]/table/tbody/tr[position()<=100]/td[2]")
答案 1 :(得分:1)
尝试一下:
=QUERY(IMPORTXML(B4, "//*[@id='historical-data']/div/div[2]/table/tbody/tr/td[2]"),
"limit 100", 0)
答案 2 :(得分:0)
我将IMPORTXML切换为IMPORTHTML,以提供一种非常优雅的解决方案:
=query(importhtml(B4,"table",1),"select Col2 limit 110 offset 1",0)
大声疾呼@ player0,让我90%都在那里。