Comments (5)
Дождался наконец исключения
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/Users/vladmironov2/Главная/Dev/notion_auto_backup/main.py", line 64, in
y.upload(path_downloaded_backup, path_downloaded_backup)
File "/Users/vladmironov2/Главная/Dev/notion_auto_backup/venv/lib/python3.9/site-packages/yadisk/yadisk.py", line 684, in upload
self._upload(self.get_upload_link, file_or_path, dst_path, **kwargs)
File "/Users/vladmironov2/Главная/Dev/notion_auto_backup/venv/lib/python3.9/site-packages/yadisk/yadisk.py", line 652, in _upload
auto_retry(attempt, n_retries, retry_interval)
File "/Users/vladmironov2/Главная/Dev/notion_auto_backup/venv/lib/python3.9/site-packages/yadisk/utils.py", line 99, in auto_retry
raise e
File "/Users/vladmironov2/Главная/Dev/notion_auto_backup/venv/lib/python3.9/site-packages/yadisk/utils.py", line 96, in auto_retry
return func()
File "/Users/vladmironov2/Главная/Dev/notion_auto_backup/venv/lib/python3.9/site-packages/yadisk/yadisk.py", line 648, in attempt
with contextlib.closing(session.put(link, data=file, **temp_kwargs)) as response:
File "/Users/vladmironov2/Главная/Dev/notion_auto_backup/venv/lib/python3.9/site-packages/requests/sessions.py", line 649, in put
return self.request("PUT", url, data=data, **kwargs)
File "/Users/vladmironov2/Главная/Dev/notion_auto_backup/venv/lib/python3.9/site-packages/requests/sessions.py", line 589, in request
resp = self.send(prep, **send_kwargs)
File "/Users/vladmironov2/Главная/Dev/notion_auto_backup/venv/lib/python3.9/site-packages/requests/sessions.py", line 703, in send
r = adapter.send(request, **kwargs)
File "/Users/vladmironov2/Главная/Dev/notion_auto_backup/venv/lib/python3.9/site-packages/requests/adapters.py", line 501, in send
raise ConnectionError(err, request=request)
requests.exceptions.ConnectionError: ('Connection aborted.', timeout('The write operation timed out'))
from yadisk.
Это известная проблема. Если кратко, для определённых типов файлов REST API режет скорость загрузки на диск до 128 КБ/с. Единственный способ обойти ограничение - это указывать другое расширение файла.
from yadisk.
Спасибо за ответ!
Меня скорость не сильно беспокоит - главное что б загрузилось по итогу.
Какой таймаут посоветуете установить на 150 Мб - 200 Мб для ZIP?
Сейчас установил timeout=(15, 250)
Жду ... пока висит.
А то тестами не подобрать быстро, тк по 20 мин висит. А потом исключение выдает.
from yadisk.
Тяжело сказать, длинные промежутки ожидания возникают из-за того что Яндекс.Диск применяет ограничение скорости с задержкой. К моменту как ограничение скорости вступает в силу, вы могли загрузить на диск несколько десятков МБ данных. Вместо стабильной скорости вы получаете редкие кратковременные скачки до максимальной скорости и очень длинные периоды полного бездействия.
Вместо подбора таймаута я бы порекомендовал попробовать ограничить скорость загрузки со своей стороны (по крайней-мере насколько это возможно с requests
), тогда периоды ожидания должны уменьшится.
Теоретически (если ограничение считается за фиксированный интервал времени), для скорости загрузки в 10 МБ/с
время ожидания может составить около 78 с
, при скорости в 100 МБ/с
- уже около 780 c
. Но совсем не факт, что вы сможете поддерживать соединение все это время на самом деле.
Но проще мне кажется всё-таки загружать файл с другим расширением и потом переименовывать обратно.
from yadisk.
Спасибо за развернутый ответ!
from yadisk.
Related Issues (20)
- Немного некорректная работа функции yadisk.YaDisk.check_token() для ограниченных прав HOT 3
- Ошибка в документации HOT 2
- Падает при загрузке на диск больших файлов HOT 7
- Не загружаются файлы с ':' в названии HOT 3
- Yadisk.Upload() gives error when parametrs are provided by names HOT 2
- Can't download specific file from public link HOT 2
- TypeError: 'type' object is not subscriptable HOT 1
- HTTPSConnectionPool(host='cloud-api.yandex.net', port=443) on Android HOT 2
- YaDisk.Upload() not actaully apply argument "overwrite" HOT 1
- Ошибка Доступ запрещён. Возможно, у приложения недостаточно прав для данного действия. (Forbidden / ForbiddenError) HOT 1
- Не могу создать публичную ссылку на папку. HOT 1
- Downloading photos/videos from unlimited storage | Скачивание фото\видео из безлимитного хранилища HOT 5
- Как получить результат метода save_to_disk если результат SyncOperationLinkObject / How to get the result of the save_to_disk method if the result is SyncOperationLinkObject HOT 2
- [Bug] grant_type not in POST при отправке кода подтверждения HOT 1
- [Feature Request] link lifetime HOT 2
- [Question] yadisk.exceptions.UnauthorizedError: Не авторизован. (Unauthorized / UnauthorizedError) HOT 3
- [Bug] requests is not installed. После компиляции кода HOT 2
- [Bug] Проблема при сборке .exe файла HOT 2
- [Question] Не работает listdir HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from yadisk.