inververs
AutoIT Гуру
- Сообщения
- 2,135
- Репутация
- 465
AutoIt: 3.3.12.0
Версия: 1.0
Категория: Автоматизация, Интернет,API, yandex disk, Яндекс диск.
Описание: Яндекс.Диск UDF позволяет управлять ресурсами Диска (файлами и папками) посредством HTTP-запросов REST API.
API Диска предназначен для приложений, которые работают с файлами пользователей Яндекс.Диска или хранят на Диске собственные файлы и настройки.
На данный момент UDF позволяет:
загружать файлы на Диск и скачивать их;
создавать новые папки;
копировать, перемещать и удалять ресурсы.
Если еще нету диска, то регистрируйся здесь. По этой ссылке дадут лишний гигабайт!
Прежде всего вам необходим OAuth-токен, выданный вашему приложению для доступа к Диску определенного пользователю. Токен нужно передать в функцию _yadisk_set_access_token в самом начале.
Как получить OAuth-токен :
Все методы API смотрите здесь: https://tech.yandex.ru/disk/doc/dg/concepts/about-docpage/
В UDF реализованы часть из них. Остальные делаются по аналогии либо под заказ.
Примечание: Библиотеке требуется WinHTTP.au3 Найти и скачать ее можно здесь http://www.autoitscript.com/forum/topic/84133-winhttp-functions/
Код/Пример:
Файл: yadisk.au3
История версий:
Автор(ы): inververs
Версия: 1.0
Категория: Автоматизация, Интернет,API, yandex disk, Яндекс диск.
Описание: Яндекс.Диск UDF позволяет управлять ресурсами Диска (файлами и папками) посредством HTTP-запросов REST API.
API Диска предназначен для приложений, которые работают с файлами пользователей Яндекс.Диска или хранят на Диске собственные файлы и настройки.
На данный момент UDF позволяет:
загружать файлы на Диск и скачивать их;
создавать новые папки;
копировать, перемещать и удалять ресурсы.
Если еще нету диска, то регистрируйся здесь. По этой ссылке дадут лишний гигабайт!
Прежде всего вам необходим OAuth-токен, выданный вашему приложению для доступа к Диску определенного пользователю. Токен нужно передать в функцию _yadisk_set_access_token в самом начале.
Как получить OAuth-токен :
1. Зарегистрироваться на яндекс.
2. Перейти по адресу https://oauth.yandex.ru/
3. Создать приложение, нажав на ссылку Регистрация клиентских приложений
3.1 Заполните название, описание.
3.2 Дайте приложению следующие права:
а) Яндекс.Диск REST API: Все;
б) Яндекс.Диск WebDAV API: Все
3.3 Callback URL - установите "Подставить URL для разработки"
Сохраните и получите ID приложения. Например: b7a724f16b134fc3858c872215b64d2d
4. Составьте и перейдите по ссылке вида: https://oauth.yandex.ru/authorize?response_type=token&client_id=b7a724f16b134fc3858c872215b64d2d&display=popup
4.1 Разрешите доступ приложению.
5. Перепишите и сохраните OAuth-токен (Например: fb1b2ca38d3942378dfc3ce1ff9c4d41). !Не спутайте его с ID
Этот токен действует 1 год.
2. Перейти по адресу https://oauth.yandex.ru/
3. Создать приложение, нажав на ссылку Регистрация клиентских приложений
3.1 Заполните название, описание.
3.2 Дайте приложению следующие права:
а) Яндекс.Диск REST API: Все;
б) Яндекс.Диск WebDAV API: Все
3.3 Callback URL - установите "Подставить URL для разработки"
Сохраните и получите ID приложения. Например: b7a724f16b134fc3858c872215b64d2d
4. Составьте и перейдите по ссылке вида: https://oauth.yandex.ru/authorize?response_type=token&client_id=b7a724f16b134fc3858c872215b64d2d&display=popup
4.1 Разрешите доступ приложению.
5. Перепишите и сохраните OAuth-токен (Например: fb1b2ca38d3942378dfc3ce1ff9c4d41). !Не спутайте его с ID
Этот токен действует 1 год.
Все методы API смотрите здесь: https://tech.yandex.ru/disk/doc/dg/concepts/about-docpage/
В UDF реализованы часть из них. Остальные делаются по аналогии либо под заказ.
Примечание: Библиотеке требуется WinHTTP.au3 Найти и скачать ее можно здесь http://www.autoitscript.com/forum/topic/84133-winhttp-functions/
Код/Пример:
Код:
#include 'yadisk.au3'
;Впишем токен
_yadisk_set_access_token('fb1b2ca38d3942378dfc3ce1ff9c4d41') ;OAuth-токен
;Создадим 2 папки
_yadisk_create_dir('/autoit')
_yadisk_create_dir('/autoit/test')
MsgBox(0, '', 'Создан каталог /autoit/test')
$test_file = 'ydisk_example.txt'
FileWrite($test_file, FileRead(@ScriptFullPath))
;Загрузка файла
_yadisk_upload_file($test_file, '/autoit/test/' & $test_file)
MsgBox(0, '', 'Загрузили файл /autoit/test/' & $test_file)
;Скачивание файла
$binary = _yadisk_download_file('/autoit/test/' & $test_file)
MsgBox(0, 'Скачали файл /autoit/test/' & $test_file, BinaryToString($binary))
;Переименование
_yadisk_move('/autoit/test/' & $test_file, '/autoit/test/ydisk_autoit.au3')
MsgBox(0, '', 'Переименовали файл /autoit/test/ydisk_autoit.au3')
;Перемещение
_yadisk_create_dir('/autoit/test/copy')
_yadisk_move('/autoit/test/ydisk_autoit.au3', '/autoit/test/copy/ydisk_autoit.au3')
MsgBox(0, '', 'Переместили в /autoit/test/copy/ydisk_autoit.au3')
;Копирование
_yadisk_copy('/autoit/test/copy/ydisk_autoit.au3', '/autoit/test/copy/ydisk_autoit_copy.au3')
MsgBox(0, '', 'Сделали копию /autoit/test/copy/ydisk_autoit_copy.au3')
;Удаление файла
_yadisk_delete('/autoit/test/copy/ydisk_autoit_copy.au3')
MsgBox(0, '', 'Удалили копию /autoit/test/copy/ydisk_autoit_copy.au3')
;Удаление папки и всех файлов внутри!
_yadisk_delete('/autoit/test/copy')
MsgBox(0, '', 'Удалили папку /autoit/test/copy')
Файл: yadisk.au3
История версий:
1.0 - Первая версия
Автор(ы): inververs