Лутай А.В. 2024-07-13
devtools::install_github("alexeilutay/YDisk4R")
Перед началом работы рекомендуется получить Yandex OAuth и принять решение о том, где он будет храниться на компьютере.
Приведенные ниже примеры описывают не все возможности функций.
Хранение в Renviron
Этот способ считается недостаточно безопасным (файл .Renviron хранится в домашней директории компьютера в виде текстового файла), тем не менее этот способ достаточно популярен.
-
открыть file.edit(“~/.Renviron”)
-
записать полученный токен в строке вида YDisk=OAuth y0_……
-
сохранить файл “~/.Renviron”
Примечание: не забудьте о переносе строки в конце списка файла Renviron.
set_YD_oath
Функция сначала ищет значение YDisk в Global Environment. Если не находит YDisk, тогда ищет иную переменную, значение которой начинается OAuth y0_…
Функция возвращает найденное значение, которое затем можно использовать в качестве токена для обращения к Yandex Disk.
yd_oauth <- set_YD_oath()
get_YD_folders
Возвращает список папок по указанному пути и все их свойства. По умолчанию, path - корневая папка Yandex Disk, limit = 100.
get_YD_folders(path = "disk:/Загрузки/", token = yd_oauth)
get_YD_files
Возвращает список файлов по указанному пути и все их свойства. Для иллюстраций Yandex предоставляет набор URL, используя которые можно скачать копии различных размеров. В возвращемой таблице все эти ссылки слиты в одну ячейку по шаблону {format}
По умолчанию, path - корневая папка Yandex Disk, а limit = 100.
get_YD_files(path = "disk:/Загрузки/", token = set_YD_oauth(), limit = 10)
upload_file_2YD
Загружает файл в указанную папку Yandex Disk.
upload_file_2YD(path = "disk:/Загрузки/",
disk_fname = "../../bookmarks.html",
overwrite = TRUE, token = yd_oauth)
Выводит статус загрузки – если видите 201, значит файл на месте.
my_public_files
Возвращает полный список public-файлов со всеми деталями в виде dataframe.
my_public_files(limit = 100, token = set_YD_oauth())
Пакет сделан для моего личного использования, у меня нет планов доведения пакета до CRAN статуса.
Если желаете развивать, код открыт.
Если сделаете pull request, постараюсь принять.