tgoop.com/google_sheets/1550
Create:
Last Update:
Last Update:
Парсим данные из веб-страницы в Таблицу скриптами
Добрый День господа!
Я - Василий!
Сегодня небольшой, но полезный скрипт, о том, как спарсить данные с сайта на примере сайта о проведении Бильярдных турниров https://fairplay.host/.
Цель:
Собрать список участников указанных турниров и посчитать сколько раз каждый из участников участвовал в этих турнирах, для дальнейшего награждения лучших.
Решение:
1. Забираем с первого листа таблицы список ссылок на турниры:
const ss = SpreadsheetApp.getActive();
const spisokTurnirov = ss
.getSheetByName('Список турниров')
.getDataRange()
.getValues()
.slice(1);
2. В коде страницы находим ссылку на API и проходим по всем ссылкам в цикле, формируя список участников с указание их города:
var arr = [];
spisokTurnirov.forEach(x => {
x = x[0].match(/\d{4,}/);
const url = 'https://fairplay.host/api/tournament/details?id=' + x[0];
arr = [...arr, ...pars(url)]
})
3. Создаём объект и считаем количество участником и далее вставляем их на другой лист:
let spr = {}; //создаём пустой объект
arr.forEach(z => {
let iii = spr[z[0]];
!iii ? spr[z[0]] = 1 : spr[z[0]] = iii + 1; // тернарный оператор
});
Делайте копию таблицы, пробуйте, смотрите код, пишите вопросы, с радостью на них ответим!
Полный код в таблице с примером.
Таблица с примером
📗 Чат @google_spreadsheets_chat
📕 Оглавление канала
🏄 Заказ работы у нас