Open pryadchenko opened 2 weeks ago
Можно ли качать preview изображений/видео?
Можно. Ссылка на превью доступна через атрибут preview
ресурса:
import yadisk
with yadisk.Client(token="...") as client:
# Получаем ссылку на превью для my-file.jpg.
# В ссылке присутствует GET-параметр size, он определяет размер превью.
# Значение этого параметра можно заменить на другое (XXXS, XXS, XS, S, M, L, XL, XXL, XXXL).
preview_url = client.get_meta("/my-file.jpg", fields=["preview"]).preview
# В некоторых случаях превью может отсутствовать (например, для папок)
if preview_url is None:
raise ValueError("Отсутствует превью")
# Теперь скачиваем превью по полученной ссылке в файл my-file-preview.jpg.
# Можно также скачать файл с помощью любой другой HTTP библиотеки обычным GET запросом.
client.download_by_link(
preview_url,
"my-file-preview.jpg",
# Для скачивания превью нужно дополнительно указать токен в заголовках
headers={"Authorization": f"OAuth {client.token}"}
)
В API v1/disk/resources, среди прочего, может возвращать пачку preview разного размера. Их можно как-то обрабатывать?
На полигоне добавили поле sizes
со ссылками на все размеры превью, но в текущей версии библиотеки он недоступен, добавлю в следующей. Пока что единственный способ выбрать размер превью — это изменять параметр size
в полученной ссылке.
Да вот получаю 403 по этой ссылке get запросом (при этом сам файл по download линке качается). Только в браузере, где авторизован в Яндексе, могу открыть preview без ошибки.
вт, 27 авг. 2024 г., 19:24 Ivan Konovalov @.***>:
Можно ли качать preview изображений/видео?
Можно. Ссылка на превью доступна через атрибут preview ресурса:
import yadisk with yadisk.Client(token="...") as client:
Получаем ссылку на превью для my-file.jpg.
# В ссылке присутствует GET-параметр size, он определяет размер превью. # Значение этого параметра можно заменить на другое (XXXS, XXS, XS, S, M, L, XL, XXL, XXXL). preview_url = client.get_meta("/my-file.jpg", fields=["preview"]).preview # В некоторых случаях превью может отсутствовать (например, для папок) if preview_url is None: raise ValueError("Отсутствует превью") # Теперь скачиваем превью по полученной ссылке в файл my-file-preview.jpg. # Можно также скачать файл с помощью любой другой HTTP библиотеки обычным GET запросом. client.download_by_link( preview_url, "my-file-preview.jpg", # Для скачивания превью нужно дополнительно указать токен в заголовках headers={"Authorization": f"OAuth {client.token}"} )
В API v1/disk/resources, среди прочего, может возвращать пачку preview разного размера. Их можно как-то обрабатывать?
На полигоне https://yandex.ru/dev/disk/poligon добавили поле sizes со ссылками на все размеры превью, но в текущей версии библиотеки он недоступен, добавлю в следующей. Пока что единственный способ выбрать размер превью — это изменять параметр size в полученной ссылке.
— Reply to this email directly, view it on GitHub https://github.com/ivknv/yadisk/issues/52#issuecomment-2313129601, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABD3E67WDIOY5I54LWZOUVDZTSY3RAVCNFSM6AAAAABNGQJIOWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGMJTGEZDSNRQGE . You are receiving this because you authored the thread.Message ID: @.***>
получаю 403
Нужно в заголовках запроса ещё указать токен (как в примере выше), тогда файл скачается.
Признаюсь, попробовал через curl, и токен указывал. Через ваш пакет не пробовал - как раз на него набрел в поисках решения. Попробую
вт, 27 авг. 2024 г., 19:46 Ivan Konovalov @.***>:
получаю 403
Нужно в заголовках запроса ещё указать токен (как в примере выше), тогда файл скачается.
— Reply to this email directly, view it on GitHub https://github.com/ivknv/yadisk/issues/52#issuecomment-2313171291, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABD3E66F4YE3JT6XVGBKBJLZTS3QHAVCNFSM6AAAAABNGQJIOWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGMJTGE3TCMRZGE . You are receiving this because you authored the thread.Message ID: @.***>
Краткое описание вашего вопроса Можно ли качать preview изображений/видео?
Подробное содержание вопроса.
В API v1/disk/resources, среди прочего, может возвращать пачку preview разного размера. Их можно как-то обрабатывать? В документации не нашел ничего