冗長な記憶の断片

Web技術のメモをほぼ毎日更新(準備中)

Feb 21, 2021 - コメント - 日記

GoogleSpreadSheetにCSVファイルを読み込むスクリプト

ネットからダウンロードしたCSVファイルを、GoogleSpreadSheet に展開するスクリプトをGooglAppsScript(GAS)で書きました。BasicAuthに対応しています。

var ss = SpreadsheetApp.getActive();
var csv_url = "https://example.com/data.csv";
var csv_user = "user";
var csv_password = "password";

function getCSV(url, user, password) {
  var params = {
    "headers" : {"Authorization" : " Basic " + Utilities.base64Encode(user + ":" + password)},
    "muteHttpExceptions" : true
  };
  return UrlFetchApp.fetch(url, params);
}

function updateTabs(url, name){
  var sheet = ss.getSheetByName(name);
  sheet.clear();
  var response = getCSV(csv_url, csv_user, csv_password);
  var data = Utilities.parseCsv(response.getContentText('sjis')); //SJIS to UTF8
  for (var i = 0; i < data.length; i++) {
    sheet.getRange(i+1, 1, 1, data[i].length).setValues(new Array(data[i]));
  }
}

外部に置いたCSVデータを自動的にスプレッドシートに取り込むのに利用しています。