【发布时间】:2020-12-01 21:47:39
【问题描述】:
刚接触 Google 表格中的 API,但我觉得自己已经完成了 95% 的目标。
我正在尝试将加密数据提取到我的电子表格中,以进行简单的 24 小时价格比较并衡量价格是上涨还是下跌,也许使用一些条件代码将背景更改为绿色或红色。很简单。不过,大多数提供 API 的网站都给了我各种错误,所以 coinbase pro(奇怪的是已弃用的 gdax)是最可靠的(尽管我不排除它开始崩溃,因为我现在投入了太多呼叫请求)。
发现这是一种获取 ETH 当前价格的方法,例如:
=VALUE(SUBSTITUTE(SUBSTITUTE(INDEX(IMPORTDATA("https://api.gdax.com/products/ETH-USD/ticker"),0,2), "price:",""), """", ""))
像魅力一样工作。因此,我将请求更改为针对不同的信息,特别是24hr stats listed on the API doc,以及该部分中的第一个值,“开盘价”为开盘价(这确保我准确地提前 24 小时获得价格)。但是我在使用请求时遇到了一个奇怪的解析错误,这里是:
=VALUE(SUBSTITUTE(SUBSTITUTE(INDEX(IMPORTDATA("https://api.pro.coinbase.com/products/ETH-USD/stats"),0,1), "open:",""), """", ""))
我已经找到了问题,但没有找到解决方案。谷歌表格说我正在输入文字。因为“open”(开盘价)值是 JSON 代码中第一个列出的值,所以它从嵌套的 HTML/JSON 代码中拉入代码括号。例如,它说我无法将“{open”解析为数字。当我拉出统计部分中列出的最后一个值时,我遇到了同样的问题,即“volume_30day:”
=VALUE(SUBSTITUTE(SUBSTITUTE(INDEX(IMPORTDATA("https://api.pro.coinbase.com/products/ETH-USD/stats"),0,6), "volume_30day:",""), """", ""))
这会返回一个错误,指出“volume_30day: #}”无法解析,所以现在它是 JSON 代码的右括号。所以我不能使用“打开”API 24hr stats 部分中的第一项或 Volume_30day,这是该列表中的第六项,但项目 2-5 工作得很好。对我来说似乎超级奇怪,但我已经对其进行了测试,这似乎是正在发生的事情。
这里肯定有一些愚蠢的东西我需要调整,但我不知道它是什么。
【问题讨论】:
标签: google-sheets google-sheets-api