【问题标题】:How to parse API data into google sheets如何将 API 数据解析为谷歌表格
【发布时间】:2021-03-23 21:08:57
【问题描述】:

我尝试将 API 响应放入电子表格中。

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

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])

}

【问题讨论】:

    标签: javascript api google-apps-script google-sheets


    【解决方案1】:

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

    建议的解决方案:

    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);
    }
    

    【讨论】:

      【解决方案2】:

      试试这样的,

       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);
       });
      

      希望你有一些想法。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-07-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多