繁体   English   中英

如何将 API 数据解析为谷歌表格

[英]How to parse API data into google sheets

我有一个 API 响应,我试图将其放入我的电子表格中。

我设法弄清楚如何使用以下代码调用它,但这一切都转到第一个单元格。 如何将每个值 go 设置为不同的单元格?

function callCandles() {
  var response = UrlFetchApp.fetch("https://api-pub.bitfinex.com/v2/candles/trade:1D:tBTCUSD/hist?limit=1000&start=1577841154000&end=1606785154000&sort=-1");
  Logger.log(response.getContentText());

  var fact = response.getContentText();
  var sheet = SpreadsheetApp.getActiveSheet();
  sheet.getRange(1,1).setValue([fact])

}

试试这样的,

 var response = UrlFetchApp.fetch("https://api-pub.bitfinex.com/v2/candles/trade:1D:tBTCUSD/hist?limit=1000&start=1577841154000&end=1606785154000&sort=-1");
 Logger.log(response.getContentText());

 var fact = JSON.parse(response.getContentText());
 var sheet = SpreadsheetApp.getActiveSheet();
 fact.forEach(row => {
   sheet.appendRow(row);
 });

希望你有一些想法。

这是在工作表中设置值的正确方法。 避免使用带有appendRow for循环。 对于相对少量的数据,它可能会非常慢。

建议的解决方案:

function myFunction() {
 var response = UrlFetchApp.fetch("https://api-pub.bitfinex.com/v2/candles/trade:1D:tBTCUSD/hist?limit=1000&start=1577841154000&end=1606785154000&sort=-1");
 var fact = JSON.parse(response.getContentText());
 var sheet = SpreadsheetApp.getActiveSheet();
 sheet.getRange(sheet.getLastRow()+1,1,fact.length,fact[0].length).setValues(fact);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM