Импорт Excel-файла с Яндекс.Диска

Демопример показывает, как загрузить Excel-файл с Яндекс.Диска в Loginom через API Яндекс.Диска.

Сценарий формирует URL для обращения к файлу, выполняет REST-запрос к сервису Яндекс.Диска, получает временную ссылку на скачивание файла и передаёт её в узел импорта Excel.

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

Примечание: Демопример имеет ограничение демонстрации всех возможностей при запуске на демостенде (Запустить демо). Рекомендуем установить пример локально.

Запустить демо

Установить локально

Предварительная подготовка

Для работы сценария необходимо создать OAuth-приложение Яндекса и получить OAuth-токен с правами доступа к Яндекс.Диску.

а) Доступ через OAuth-приложение

Сначала необходимо создать OAuth-приложение на странице:

https://oauth.yandex.ru/client/new

При создании приложения выбрать тип:

Для доступа к API или отладки

В названии приложения указать любое понятное имя, например:

YandexDiskAccess

В разделе Доступ к данным добавить права:

Право Назначение
cloud_api:disk.read Чтение файлов и папок Яндекс.Диска
cloud_api:disk.info Получение информации о Диске
б) Получение OAuth-токена

Для получения токена используется значение ClientID из созданного OAuth-приложения.

ClientID находится на странице приложения в разделе с основными параметрами. Значение используется в ссылке авторизации.

Ссылка для получения токена:

https://oauth.yandex.ru/authorize?response_type=token&client_id=ТВОЙ_CLIENT_ID

Вместо ТВОЙ_CLIENT_ID указать значение ClientID.

После подтверждения доступа Яндекс возвращает OAuth-токен. Токен используется в сценарии при отправке REST-запроса.

Описание алгоритма

1. Запрос к сервису

Во входном порту переменных сценария задаются параметры для поиска файла на Яндекс.Диске.

Имя Метка Значение
 yandex_disk_folder_path Путь к папке на Яндекс.Диске Папка, в которой находится Excel-файл
 yandex_disk_file_name Имя Excel-файла Имя файла без расширения .xlsx
 yandex_oauth_token OAuth-токен Яндекс.Диска Токен для доступа к API Яндекс.Диска

В подмодели Запрос к сервису формируется URL для обращения к API Яндекс.Диска и выполняется REST-запрос для получения временной ссылки на скачивание Excel-файла.

а) Формирование URL доступа к файлу

URL формируется на основе пути к папке и имени Excel-файла.

В запросе используется параметр fields=file, чтобы получить из ответа только ссылку на скачивание файла.

б) ↶REST:Яндекс диск

На странице Подключения настроено подключение REST-сервиса.

В сценарии URL подключения передаётся через управляющую переменную, сформированную на предыдущем шаге.

в) Вызов REST-сервиса

В узле Вызов REST-сервиса выполняется запрос к API Яндекс.Диска. В заголовок запроса передаётся OAuth-токен:

Заголовок Значение
Authorization OAuth <значение_токена>

Значение заголовка задаётся через управляющую переменную yandex_oauth_token.

В ответе сервис возвращает JSON с полем file. Это временная ссылка, по которой можно скачать выбранный Excel-файл.

2. Преобразование ответа от сервиса в ссылку

В подмодели Преобразование ответа от сервиса в ссылку ответ REST-сервиса преобразуется в переменную со ссылкой на файл.

а) Преобразование JSON в дерево

В узле JSON в дерево ответ сервиса преобразуется из JSON в древовидную структуру.

б) Преобразование дерева в таблицу

В узле Дерево в таблицу из ответа сервиса выделяется поле Root.file.

в) Преобразование ссылки в переменную

В узле Преобразование ссылки на файл в переменную ссылка преобразуется в переменную.

3. Чтение файла

В узле Чтение файла выполняется импорт Excel-файла по ссылке, полученной из Яндекс.Диска.

Параметр Имя файла/URL получает значение из управляющей переменной со ссылкой на файл.


Множественный импорт файлов

Скачайте и откройте файл в Loginom. При необходимости Loginom CE можно скачать бесплатно

Скачать демопример

Минимальные требования к системе:

  • Операционная система: Windows 10 и выше
  • CPU x64: 2 core 1
  • Оперативная память: 4 GB
  • Жесткий диск: 10 GB

1 Поддерживается работа на x64 процессорах Intel Core, AMD FX и более новых, содержащих инструкции SSE4.2, POPCNT.

Новости, материалы по аналитике, кейсы применения, активное сообщество