Найти тему

Парсим ключевую ставку ЦБ 🗣 не по-человечески*


Друзья, на сайте ЦБ, в разделе с ключевой ставкой есть график, если нам нужна ключевая ставка за доступные даты, то мы можем обратиться к данным в коде страницы из которых построен этот график, обработать их и вставить эти данные в Таблицу.

Скрипт как всегда простой – обращаемся к странице, далее достаём регулярным выражением даты и значения, как строки, делим по запятой и собираем из этого массив, который вставляем в нашу Таблицу.

В Таблице у вас появятся два столбца – даты и значения.

function myFunction() {
const url = 'https://www.cbr.ru/hd_base/keyrate/'
const response = UrlFetchApp.fetch(url).getContentText();
var dates = response.match(/"categories":\[(.+?)\]/)?.[1];
var values = response.match(/"data":\[(.+?)\]/)?.[1];

if (!dates || !values) { return; };

dates = dates.split(',');
values = values.split(',');
all = dates.map((f, i) => [f.replace(/"/g, ''), values[i].replace('.', ',')]);

const ss = SpreadsheetApp.getActive();
const sh = ss.getSheetByName('Лист1');
sh.clearContents();
sh.getRange(1, 1, all.length, all[0].length).setValues(all);

};


* а по-человечески данные можно получать так, может попробуем в другой раз
Парсим ключевую ставку ЦБ 🗣 не по-человечески*  Друзья, на сайте ЦБ, в разделе с ключевой ставкой есть график, если нам нужна ключевая ставка за доступные даты, то мы можем обратиться к данным в коде
Около минуты