Google 工作表 importXML Returns 空值
Google Sheets importXML Returns Empty Value
我正在尝试使用 google sheet 来抓取该网站 (https://kamadan.gwtoolbox.com/),花费 material 我玩的游戏的费用。有两张桌子; "Common Materials" 和 "Rare Materials" 在右上角的下拉列表中。随着价格的更新,我正试图提取两者的价值。我复制了完整的 Xpath 并在 sheet.
上的空单元格中使用了下面的函数
=importxml("https://kamadan.gwtoolbox.com/","/html/body/div[2]/div[1]/div/div[2]/table/tbody")
这 return 是一个 #N/A 错误,表示它 return 是一个空值。
我也用常规的 xpath 试过了...
=importxml("https://kamadan.gwtoolbox.com/","//*[@id='trader-overlay-items']")
这只是 return 一个空白单元格。我还通过 chrome 对祖先使用检查功能尝试了这两种方法,并且 children 他们 return 上述两个错误中的任何一个。
抱歉,如果这真的很简单。我对 Xpaths 或 html 一点都不熟悉。我主要涉猎 VBA excel.
答案:
IMPORTXML
无法检索由脚本填充的数据,因此无法使用此公式从此 table 检索数据。
更多信息:
正如您已经提到的,您可以尝试使用以下方法直接从 table 获取数据:
=IMPORTXML("https://kamadan.gwtoolbox.com/","//table[@id='trader-overlay-items']")
这只是一个空白单元格。
我更进一步,尝试通过在页面上的 HTML
元素上调用 IMPORTXML
来对其进行逆向工程,步骤如下:
=IMPORTXML("https://kamadan.gwtoolbox.com/","html")
=IMPORTXML("https://kamadan.gwtoolbox.com/","html/body")
=IMPORTXML("https://kamadan.gwtoolbox.com/","html/body/div[1]")
=IMPORTXML("https://kamadan.gwtoolbox.com/","html/body/div[1]/div[0]")
...
html/body/div[1]/div[0]
是第一个没有导入内容的路径,从导入 html/body
可以看出,完整的正文不包含信息,只有它的模板 - 在单元格 B1
我们参考了 'Common materials' 和 'Rare materials':
并且在 D1
中,我们开始看到 JavaScript 和 JSON 对象未被 IMPORTXML
调用,因此无法检索其结果:
如您所见,如果您在网站上禁用 JavaScript,实际上几乎没有任何内容呈现,因此无法使用 IMPORTXML
:
获得
参考文献:
我正在尝试使用 google sheet 来抓取该网站 (https://kamadan.gwtoolbox.com/),花费 material 我玩的游戏的费用。有两张桌子; "Common Materials" 和 "Rare Materials" 在右上角的下拉列表中。随着价格的更新,我正试图提取两者的价值。我复制了完整的 Xpath 并在 sheet.
上的空单元格中使用了下面的函数=importxml("https://kamadan.gwtoolbox.com/","/html/body/div[2]/div[1]/div/div[2]/table/tbody")
这 return 是一个 #N/A 错误,表示它 return 是一个空值。
我也用常规的 xpath 试过了...
=importxml("https://kamadan.gwtoolbox.com/","//*[@id='trader-overlay-items']")
这只是 return 一个空白单元格。我还通过 chrome 对祖先使用检查功能尝试了这两种方法,并且 children 他们 return 上述两个错误中的任何一个。
抱歉,如果这真的很简单。我对 Xpaths 或 html 一点都不熟悉。我主要涉猎 VBA excel.
答案:
IMPORTXML
无法检索由脚本填充的数据,因此无法使用此公式从此 table 检索数据。
更多信息:
正如您已经提到的,您可以尝试使用以下方法直接从 table 获取数据:
=IMPORTXML("https://kamadan.gwtoolbox.com/","//table[@id='trader-overlay-items']")
这只是一个空白单元格。
我更进一步,尝试通过在页面上的 HTML
元素上调用 IMPORTXML
来对其进行逆向工程,步骤如下:
=IMPORTXML("https://kamadan.gwtoolbox.com/","html")
=IMPORTXML("https://kamadan.gwtoolbox.com/","html/body")
=IMPORTXML("https://kamadan.gwtoolbox.com/","html/body/div[1]")
=IMPORTXML("https://kamadan.gwtoolbox.com/","html/body/div[1]/div[0]")
...
html/body/div[1]/div[0]
是第一个没有导入内容的路径,从导入 html/body
可以看出,完整的正文不包含信息,只有它的模板 - 在单元格 B1
我们参考了 'Common materials' 和 'Rare materials':
并且在 D1
中,我们开始看到 JavaScript 和 JSON 对象未被 IMPORTXML
调用,因此无法检索其结果:
如您所见,如果您在网站上禁用 JavaScript,实际上几乎没有任何内容呈现,因此无法使用 IMPORTXML
: