Это наш очередной пост в колонку “Office как Платформа”. На этот раз приветствуем Дмитрия Соловьева ( dmitriysolovev), руководителя центра поддержки Office 365 в компании АстроСофт – автора уже нескольких статей по технологии PowerBI. В этой статье Дмитрий расскажет о том, как использовать REST API для получения данных из внешних источников для визуализации и анализа в PowerBI. – Владимир Юнев
Всем привет! На хабре было уже несколько постов на тему Power BI. Если судить по комментариям, то как минимум нескольким читателям актуальна тема получения данных из REST веб-сервисов. Сегодня ее и рассмотрим на примере получения и обработки данных с портала открытых данных г. Санкт-Петербурга (http://data.gov.spb.ru/). Экзекуции будут подвергнуты данные технико-экономических паспортов многоквартирных домов (http://data.gov.spb.ru/datasets/69/). В роли «пыточного инструмента» выступит Excel 2016, в состав которого теперь по умолчанию встроен Power Query.
Введение
В целом Power Query позволяет получать данные из открытых и не очень источников различными способами (рис.1):
- Получение данных «Из интернета». В этом случае достаточно указать URL страницы, на которой находятся интересующие нас данные и загрузить их. Из недостатков – стабильно работает только на страницах, использующих табличную вёрстку; приходится писать функции в случае, если данные разбиты на страницы; администраторы сайта могут Вас забанить, если будет слишком много запросов (а они будут, если страниц много);
- Получение данных из канала OData. Этот вариант подходит для различных LOB-приложений, которые поддерживают OData;
- Написать запрос с нуля, используя возможности языка «M». Как раз этот вариант я и буду использовать в данном случае.