Skip to main content

Библиотека-клиент REST API Яндекс.Диска / Yandex.Disk REST API client library

Project description

Read the Docs PyPI AUR Donate

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.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 и GatewayTimeoutError
    • listdir() теперь вызывает 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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
yadisk-1.2.11-py3-none-any.whl (32.7 kB) Copy SHA256 hash SHA256 Wheel py3 Jun 30, 2018
yadisk-1.2.11.tar.gz (42.3 kB) Copy SHA256 hash SHA256 Source None Jun 30, 2018

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page