【发布时间】:2020-03-21 19:06:23
【问题描述】:
我正在尝试将包含所有收盘价 BTC 价格的列导入 Google 表格。 (在一组特定日期内) 我已经有了这个允许 importJSON 的脚本:
/**
* Imports JSON data to your spreadsheet Ex: IMPORTJSON("http://myapisite.com","city/population")
* @param url URL of your JSON data as string
* @param xpath simplified xpath as string
* @customfunction
*/
function IMPORTJSON(url,xpath){
try{
// /rates/EUR
var res = UrlFetchApp.fetch(url);
var content = res.getContentText();
var json = JSON.parse(content);
var patharray = xpath.split(".");
//Logger.log(patharray);
for(var i=0;i<patharray.length;i++){
json = json[patharray[i]];
}
//Logger.log(typeof(json));
if(typeof(json) === "undefined"){
return "Node Not Available";
} else if(typeof(json) === "object"){
var tempArr = [];
for(var obj in json){
tempArr.push([obj,json[obj]]);
}
return tempArr;
} else if(typeof(json) !== "object") {
return json;
}
}
catch(err){
return "Error getting data";
}
}
我能够得到的,即这个 JSON 调用的最后价格:
=importJSON("https://api.coingecko.com/api/v3/coins/marketsvs_currency=eur&ids=bitcoin","0.current_price")
无论如何,我无法进行正确的 JSON 调用或类似的操作,以导入包含从任意日期到当前日期的 btc 收盘价的列。 我安装了一个名为 cryptosheet 的电子表格扩展程序,并尝试使用 SS() 函数,但到目前为止没有任何效果。
【问题讨论】:
-
可以提供
nothing works so far的详细信息吗?例如,如果发生错误,请显示它。 -
例如在 coinjecko api 文档中,这是对硬币价格历史的调用:''' api.coingecko.com/api/v3/coins/bitcoin/… ''' 所以我输入 ''' =importJSON("api.coingecko.com/api/v3/coins/bitcoin/…) '' '并且它说'''错误获取数据'''
-
感谢您的回复。根据您的回复和问题,我提出了一个修改后的公式作为答案。你能确认一下吗?如果我误解了您的问题并且这不是您想要的方向,我深表歉意。
标签: json google-sheets google-sheets-api