Получение файлов из Яндекс Диск по API в Power BI
ฝัง
- เผยแพร่เมื่อ 6 ต.ค. 2024
- В видео рассказываю как с помощью API получить список файлов, находящихся на вашем Яндекс Диске, а потом загрузить нужные файлы в Power BI
Прямая ссылка на коннектор: raw.githubuser...
Мой телеграм t.me/IlyaNazarov
Дополнительная информация по Power BI и Power Query на русском:
Канал по Power BI: t.me/PBI_Rus/7
Канал по Power Query: t.me/PQ_ru
Для тех, кто в танке t.me/pbi_pq_fr...
#powerbi #yandexdiskapi
Добрый день! В запросе "Запрос1" произошла ошибка. Expression.Error: Поле "array" записи не найдено.
Сведения:
string=[Type]
date-time=[Type]
int64=[Type]
boolean=[Type]
object=[Type]
number=[Type]
any=[Type]
Exif=[Type]
Спасибо огромное! Вы просто молодец!
С точки зрения пользователя, позволю себе оставить небольшой комментарий, не в коем случае не критику, но обратную связь, которая, возможно заинтересует разарботчиков в их дальнейших изысканиях.
Итак. 1. Для чего мы расшариваем файл, в частности excel файлы. В основном это делается для совместной работы над одним мастер файлом.
Т.е одна ексель табличка расшарена на One Drive или Yandex Disc и пользователи добавляют свою информацию в табличку или обновляют весь файл.
При расшаривании файла через One Drive чтобы обновить файлы содержащиеся в папке достаточно обновить запрос.
Увы при использовании данного коннектора совершенно необходимо каждый раз обновлять функцию и заменять ссылку на источник в запросе выгрузки excel файла.
Это не очень удобно.
Еще мне не очень понятен смысл создания отдельной функции по генерированию ссылки на объект, ведь ссылка на скачивание уже содержится в результате запуска функции "Получить список файлов упорядоченный по имени" в колонке "file"
Спасибо за комментарий! Думаю, что вопрос этот не ко мне, а к разработчикам API. Видимо они имели в виду какой-то сценарий, когда такая функция может понадобиться. Касательно описанного вами случая, папку на яндекс диске можно синхронизировать с локальной папкой на компьютере, тогда коннектор совсем не понадобится: можно напрямую подключиться к файлу на локальном диске)
Илья, добрый день!
Подскажите, а если нужно/хочется подключиться не к файлу, а к папке с однотипными файлами, то через коннектор же можно сгенерировать ссылку на папку?
Добрый день. Проще установите Яндекс диск на компьютер и подключайтесь к папке. Разумеется, можно помучиться и подключаться по API. Но тут без чтения документации не обойтись;)
Спасибо! Очень актуально. А к mail диску существует коннектор?
Добрый день, спасибо. Я не делал и не попадался на глаза.
Добрый день! Все делаю как по видео. выходит следующая ошибка
В запросе "Запрос1" произошла ошибка. Expression.Error: Поле "array" записи не найдено.
Сведения:
string=[Type]
date-time=[Type]
int64=[Type]
boolean=[Type]
object=[Type]
number=[Type]
any=[Type]
Exif=[Type]
Я верно понимаю, этот вариант подходит только для своих файлов?
Ведь если кто-то расшарит папку на YD, токен свой он же не отдаст?
если у вас будет доступ к папке из вашего диска, то скорее всего сможете. Советую пообщаться с поддержкой Яндекса, они лучше знают свой продукт и смогут что-то посоветовать
Добрый день! Всё прекрасно до момента самого выполнения метода. Ругается на "Formula.Firewall: Запрос "Запрос2" (шаг "columns") ссылается на другие запросы или этапы и поэтому не может напрямую обращаться к источнику данных. Измените эту комбинацию данных." Никаких изменений не было в коде ?
Добрый день! В настройках Power Query в безопасности включите always ignore privacy levels (игнорировать уровни безопасности, как-то так называется). Она блокирует выполнение запроса, если он ссылается на другой запрос
Приветствую. Вопрос (я сейчас мучаю апи яндекса). Как найти файл по части файла? Например 21353тловпю.rar Как найти его по 12353?
@@workfilesC думаю, что по вашему примеру не найдете, потому что перестановка символов влияет. Поищите в документации описание функций Text.Starts, Text.Contains и т.д.
Спасибо за материал! Переходим с Microsoft 365 на Yandex столкнулись с проблемой как вытягивать данные с excel таблиц хранящихся на yandex disk. Попытались применить ваш запрос но к сожалению столкнулись с ошибкой
В запросе "Запрос1" произошла ошибка. Expression.Error: Поле "array" записи не найдено.
Сведения:
string=[Type]
date-time=[Type]
int64=[Type]
boolean=[Type]
object=[Type]
number=[Type]
any=[Type]
Exif=[Type]
ниже в коментариях народ уже писал чт сталкивался с таким. Подскажите как это можно побороть ?
Возможно что-то поменялось в работе API
Здравствуйте! На этапе получения списка файлов возникает ошибка: Formula.Firewall: Query 'Query1' (step 'columns') references other queries or steps, so it may not directly access a data source. Please rebuild this data combination. Не подскажете, как исправить?
Отключите в настройках Power BI. Options - Privacy - Always ignore Privacy Level settings
Добрый день! Подскажите пожалуйтса, а можно с помощью этого инструмента получить список прямых ссылок на файлы в ЯД? Не по одному, а списком. Заранее Благодарю за ответ
Конечно можно. Напишите самый обыкновенный скрипт, который будет перебирать список файлов по одному
Всё хорошо только при изменении данных в таблице на яндекс-диске не обновляется информация в power bi (остается без изменений).
Если вы про автоматическое изменение, то так действительно не работает. Если вы пытаетесь обновить вручную и ничего не происходит, то это очень странно...
@@IliahNazarov У меня тоже не меняются данные при ручном обновлении файла. Попробовала снова вызвать функцию, скопировала из нее URL адрес и вставила в предыдущую функцию, данные так обновляются. Но меняю данные снова на Яндекс диске, вручную обновляю POWER BI, данные в нем не меняются.
Помогите разобраться.
@@ЭкономистРоддом1 здравствуйте! Предлагаю установить на компьютер Яндекс диск и подключаться к файлу из локальной папки. Это самое простое решение.