Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/alexeilutay/ydisk4r

A set of functions to deal with Yandex Disk
https://github.com/alexeilutay/ydisk4r

Last synced: 8 days ago
JSON representation

A set of functions to deal with Yandex Disk

Awesome Lists containing this project

README

        

---
title: "YDisk4R -- набор R функций для работы с Yandex Disk"
author: "Лутай А.В."
output:
github_document:
toc: yes
toc_depth: 4
date: '2024-07-13'
---

### Установка

```{r echo=TRUE, eval = FALSE, message=FALSE, warning=FALSE}
devtools::install_github("alexeilutay/YDisk4R")
```

### Перечень функций

Перед началом работы рекомендуется [получить Yandex OAuth](https://yandex.ru/dev/id/doc/ru/register-client) и принять решение о том, где он будет храниться на компьютере.

Приведенные ниже примеры описывают не все возможности функций.

**Хранение в Renviron**

Этот способ считается недостаточно безопасным (файл .Renviron хранится в домашней директории компьютера в виде текстового файла), тем не менее этот способ достаточно популярен.

- открыть file.edit("~/.Renviron")

- записать полученный токен в строке вида YDisk=OAuth y0_......

- сохранить файл "~/.Renviron"

Примечание: не забудьте о переносе строки в конце списка файла Renviron.

**set_YD_oath**

Функция сначала ищет значение YDisk в Global Environment. Если не находит YDisk, тогда ищет иную переменную, значение которой начинается OAuth y0_...

Функция возвращает найденное значение, которое затем можно использовать в качестве токена для обращения к Yandex Disk.

```{r echo=TRUE, eval = FALSE, message=FALSE, warning=FALSE}
yd_oauth <- set_YD_oath()
```

***

**get_YD_folders**

Возвращает список папок по указанному пути и все их свойства. По умолчанию, path - корневая папка Yandex Disk, limit = 100.

```{r echo=TRUE, eval = FALSE, message=FALSE, warning=FALSE}
get_YD_folders(path = "disk:/Загрузки/", token = yd_oauth)
```

***

**get_YD_files**

Возвращает список файлов по указанному пути и все их свойства. Для иллюстраций Yandex предоставляет набор URL, используя которые можно скачать копии различных размеров. В возвращемой таблице все эти ссылки слиты в одну ячейку по шаблону {format}

По умолчанию, path - корневая папка Yandex Disk, а limit = 100.

```{r echo=TRUE, eval = FALSE, message=FALSE, warning=FALSE}
get_YD_files(path = "disk:/Загрузки/", token = set_YD_oauth(), limit = 10)
```
***

**upload_file_2YD**

Загружает файл в указанную папку Yandex Disk.

```{r echo=TRUE, eval = FALSE, message=FALSE, warning=FALSE}
upload_file_2YD(path = "disk:/Загрузки/",
disk_fname = "../../bookmarks.html",
overwrite = TRUE, token = yd_oauth)
```

Выводит статус загрузки -- если видите 201, значит файл на месте.

**my_public_files**

Возвращает полный список public-файлов со всеми деталями в виде dataframe.

```{r echo=TRUE, eval = FALSE, message=FALSE, warning=FALSE}
my_public_files(limit = 100, token = set_YD_oauth())
```

## Обратная связь

Пакет сделан для моего личного использования, у меня нет планов доведения пакета до CRAN статуса.

Если желаете развивать, код открыт.

Если сделаете pull request, постараюсь принять.