function myFunction() {
var range = [4, 5, 7, 8, 10]; // С какими полями работаем
var source = "H"; // Из какой колонки берем значения
var target = "I"; // В какую колонку пишем значения
var historical = "J"; // Куда пишем исторические значения
var historicaltime = "2592000"; // Сколько секунд назад значения интересуют (60*60*24*30, т.е. за месяц)
var currentunixtime = Date.now();
var monthago = currentunixtime - historicaltime // Рассчет времени месяц назад
var base = "BTC" // Базовая валюта
//var url = 'https://www.poloniex.com/public?command=returnTicker'
var ss = SpreadsheetApp.getActiveSpreadsheet(); // Выбираем активную таблицу
var sheet = ss.getSheetByName("Биржа"); // Выбираем нужную страницу
var index;
for (index = 0; index < range.length; ++index) {
var currency = sheet.getRange(source+range[index]).getValue(); // Берём название валюты из таблицы
var url = 'https://min-api.cryptocompare.com/data/price?fsym='+base+'&tsyms='+currency; // Загружаем URL
var response = UrlFetchApp.fetch(url, {'muteHttpExceptions': true}); // Получаем ответ
var json = response.getContentText(); // Обрабатываем ответ
var data = JSON.parse(json); // Парсим json
var buf = 'data.'+currency // Формируем переменную по которой парсить результаты
SpreadsheetApp.getActiveSheet().getRange(target+range[index]).setValue(eval(buf)); // Пишем в ячейку распарсенный результат (eval(buf))
//Utilities.sleep(1000);
url = 'https://min-api.cryptocompare.com/data/pricehistorical?fsym='+base+'&tsyms='+currency+'&ts='+monthago
response = UrlFetchApp.fetch(url, {'muteHttpExceptions': true});
json = response.getContentText();
data = JSON.parse(json);
buf = 'data.'+base+'.'+currency
//eval(buf);
SpreadsheetApp.getActiveSheet().getRange(historical+range[index]).setValue(eval(buf));
//Utilities.sleep(1000);
}
}
Comments