Библиотека-клиент REST API Яндекс.Диска / Yandex.Disk REST API client library
Project description
YaDisk - это библиотека-клиент REST API Яндекс.Диска.
Документация доступна на Read the Docs (RU) и Read the Docs (EN).
Установка
pip install yadisk
или
python setup.py install
Примеры
import yadisk
y = yadisk.YaDisk(token="<токен>")
# или
# y = yadisk.YaDisk("<id-приложения>", "<secret-приложения>", "<токен>")
# Проверяет, валиден ли токен
print(y.check_token())
# Получает общую информацию о диске
print(y.get_disk_info())
# Выводит содержимое "/some/path"
print(list(y.listdir("/some/path")))
# Загружает "file_to_upload.txt" в "/destination.txt"
y.upload("file_to_upload.txt", "/destination.txt")
# То же самое
with open("file_to_upload.txt", "rb") as f:
y.upload(f, "/destination.txt")
# Скачивает "/some-file-to-download.txt" в "downloaded.txt"
y.download("/some-file-to-download.txt", "downloaded.txt")
# Безвозвратно удаляет "/file-to-remove"
y.remove("/file-to-remove", permanently=True)
# Создаёт новую папку "/test-dir"
print(y.mkdir("/test-dir"))
История изменений
Release 1.2.16 (2022-08-17)
Исправлен баг в
check_token(): функция могла вызватьForbiddenError, если у приложения недостатчно прав (issue #23).
Release 1.2.15 (2021-12-31)
Исправлено: не распознавались ссылки на асинхронные операции, если они использовали
http://(вместоhttps://). Иногда Яндекс.Диск может вернутьhttp://ссылку на асинхронную операцию. Теперь обе версии ссылок распознаются правильно, при этом, при получении информации об операции (черезget_operation_status()) всегда используетсяhttps://версия ссылки, даже если Яндекс.Диск вернулhttp://.
Release 1.2.14 (2019-03-26)
Исправлена ошибка
TypeErrorв функцияхget_public_*при использовании с параметромpath(issue #7)Добавлен аттрибут
unlimited_autoupload_enabledдляDiskInfoObject
Release 1.2.13 (2019-02-23)
Добавлен
md5параметр дляremove()Добавлен
UserPublicInfoObjectДобавлен аттрибут
countryдляUserObjectДобавлен аттрибут
photoslice_timeдляResourceObject,PublicResourceObjectиTrashResourceObject
Release 1.2.12 (2018-10-11)
Исправлен баг: не работает параметр fields в listdir() (issue #4)
Release 1.2.11 (2018-06-30)
Добавлен недостающий параметр
sortдляget_meta()Добавлены аттрибуты
fileиantivirus_statusдляResourceObject,PublicResourceObjectиTrashResourceObjectДобавлен параметр
headersИсправлена опечатка в
download()иdownload_public()(issue #2)Убран параметр
*args
Release 1.2.10 (2018-06-14)
Исправлено поведение
timeout=None.Noneдолжен означать „без таймаута“, но в предыдущих версиях значениеNoneбыло синонимично со стандартным таймаутом.
Release 1.2.9 (2018-04-28)
Изменена лицензия на LGPLv3 (см.
COPYINGиCOPYING.lesser)Другие изменения информации о пакете
Release 1.2.8 (2018-04-17)
Исправлено несколько опечаток: у
PublicResourceListObject.itemsиTrashResourceListObject.itemsбыли неправильные типы данныхПсевдонимы полей в параметре
fieldsзаменяются при выполнении запросов API (например,embedded->_embedded)
Release 1.2.7 (2018-04-15)
Исправлен баг перемотки файла при загрузке/скачивании после повторной попытки
Release 1.2.6 (2018-04-13)
Теперь объекты сессий
requestsкэшируются, чтобы их можно было переиспользовать (иногда может существенно ускорить выполнение запросов)keep-aliveотключается при загрузке/скачивании файлов по умолчанию
Release 1.2.5 (2018-03-31)
Исправлен баг (ошибка на единицу) в
utils.auto_retry()(иногда мог вызватьAttributeError)Повторные попытки применяются для
upload(),download()иdownload_public()целикомЗадано
stream=Trueдляdownload()иdownload_public()Другие мелкие исправления
Release 1.2.4 (2018-02-19)
Исправлена опечатка (
TokenObject.exprires_in->TokenObject.expires_in)
Release 1.2.3 (2018-01-20)
Исправлено
TypeErrorпри вызовеWrongResourceTypeError
Release 1.2.2 (2018-01-19)
refresh_token()больше не требует валидный или пустой токен.
Release 1.2.1 (2018-01-14)
Исправлена неработоспособность повторных попыток.
Release 1.2.0 (2018-01-14)
Исправлено использование
n_retries=0вupload(),download()иdownload_public()upload(),download()иdownload_public()больше не возвращают ничего (см. документацию)Добавлен модуль
utils(см. документацию)Добавлены
RetriableYaDiskError,WrongResourceTypeError,BadGatewayErrorиGatewayTimeoutErrorlistdir()теперь вызываетWrongResourceTypeErrorвместоNotADirectoryError
Release 1.1.1 (2017-12-29)
Исправлена обработка аргументов в
upload(),download()иdownload_public(). До этого использованиеn_retriesиretry_intervalвызывало исключение (TypeError).
Release 1.1.0 (2017-12-27)
Усовершенствованные исключения (см. документацию)
Добавлена поддержка параметра
force_asyncМелкие исправления багов
Release 1.0.8 (2017-11-29)
Исправлен ещё один баг в
listdir()
Release 1.0.7 (2017-11-04)
Добавлен
install_requiresвsetup.py
Release 1.0.6 (2017-11-04)
Некоторые функции теперь возвращают
OperationLinkObject
Release 1.0.5 (2017-10-29)
Исправлен
setup.py, теперь исключает тесты
Release 1.0.4 (2017-10-23)
Исправлены баги в
upload,downloadиlistdirЗначение по-умолчанию
limitвlistdirустановлено в10000
Release 1.0.3 (2017-10-22)
Добавлен модуль
settings
Release 1.0.2 (2017-10-19)
Исправлена функция
get_code_url(добавлены недостающие параметры)
Release 1.0.1 (2017-10-18)
Исправлен серьёзный баг в
GetTokenRequest(добавлен недостающий параметр)
Release 1.0.0 (2017-10-18)
Первый релиз
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.