Загрузка файлов

class oceanai.modules.lab.download.DownloadMessages(lang: str = 'ru', color_simple: str = '#666', color_info: str = '#1776D2', color_err: str = '#FF0000', color_true: str = '#008001', bold_text: bool = True, text_runtime: str = '', num_to_df_display: int = 30)[исходный код]

Базовые классы: Unzip

Класс для сообщений

Параметры
class oceanai.modules.lab.download.Download(lang: str = 'ru', color_simple: str = '#666', color_info: str = '#1776D2', color_err: str = '#FF0000', color_true: str = '#008001', bold_text: bool = True, text_runtime: str = '', num_to_df_display: int = 30)[исходный код]

Базовые классы: DownloadMessages

Класс для загрузки файлов

Параметры
__progressbar_download_file_from_url(url_filename: str, progress: float, clear_out: bool = True, last: bool = False, out: bool = True) None

Индикатор выполнения загрузки файла из URL

Примечание

private (приватный метод)

Параметры
  • url_filename (str) – Путь до файла

  • progress (float) – Процент выполнения (от 0.0 до 100.0)

  • clear_out (bool) – Очистка области вывода

  • last (bool) – Замена последнего сообщения

  • out (bool) – Отображение

Результат

None

Тип результата

None

Примеры

Верно – 1 –

In [1]:
 1import numpy as np
 2from oceanai.modules.lab.download import Download
 3
 4download = Download()
 5
 6for progress in np.arange(0., 101, 25):
 7    download._Download__progressbar_download_file_from_url(
 8        url_filename = 'https://clck.ru/32Nwdk',
 9        progress = float(progress),
10        clear_out = False,
11        last = False, out = True
12    )
[1]:
1[2022-10-16 16:58:51] Загрузка файла "https://clck.ru/32Nwdk" (0.0%) ...
2
3[2022-10-16 16:58:51] Загрузка файла "https://clck.ru/32Nwdk" (25.0%) ...
4
5[2022-10-16 16:58:51] Загрузка файла "https://clck.ru/32Nwdk" (50.0%) ...
6
7[2022-10-16 16:58:51] Загрузка файла "https://clck.ru/32Nwdk" (75.0%) ...
8
9[2022-10-16 16:58:51] Загрузка файла "https://clck.ru/32Nwdk" (100.0%) ...

– 2 –

In [2]:
 1import numpy as np
 2from oceanai.modules.lab.download import Download
 3
 4download = Download()
 5
 6for progress in np.arange(0., 101, 25):
 7    download._Download__progressbar_download_file_from_url(
 8        url_filename = 'https://clck.ru/32Nwdk',
 9        progress = float(progress),
10        clear_out = True,
11        last = True, out = True
12    )
[2]:
1[2022-10-16 16:59:41] Загрузка файла "https://clck.ru/32Nwdk" (100.0%) ...

Ошибка – 1 –

In [3]:
 1import numpy as np
 2from oceanai.modules.lab.download import Download
 3
 4download = Download()
 5
 6for progress in np.arange(0., 101, 25):
 7    download._Download__progressbar_download_file_from_url(
 8        url_filename = 'https://clck.ru/32Nwdk',
 9        progress = 101,
10        clear_out = True,
11        last = False, out = True
12    )
[3]:
1[2022-10-16 17:00:11] Неверные типы или значения аргументов в "Download.__progressbar_download_file_from_url" ...
_download_file_from_url(url: str, force_reload: bool = True, out: bool = True, runtime: bool = True, run: bool = True) int[исходный код]

Загрузка файла из URL (без очистки истории вывода сообщений в ячейке Jupyter)

Примечание

protected (защищенный метод)

Параметры
  • url (str) – Полный путь к файлу

  • force_reload (bool) – Принудительная загрузка файла из сети

  • out (bool) – Отображение

  • runtime (bool) – Подсчет времени выполнения

  • run (bool) – Блокировка выполнения

Результат

Код статуса ответа:

  • 200 - Файл загружен

  • 400 - Ошибка при проверке аргументов

  • 403 - Выполнение заблокировано пользователем

  • 404 - Не удалось скачать файл

Тип результата

int

Примеры

Верно – 1 –

In [1]:
 1from oceanai.modules.lab.download import Download
 2
 3download = Download()
 4
 5download.path_to_save_ = './models'
 6download.chunk_size_ = 2000000
 7
 8res_download_file_from_url = download._download_file_from_url(
 9    url = 'https://download.sberdisk.ru/download/file/400635799?token=MMRrak8fMsyzxLE&filename=weights_2022-05-05_11-27-55.h5',
10    force_reload = True,
11    out = True,
12    runtime = True,
13    run = True
14)
[1]:
1[2022-10-16 20:23:25] Загрузка файла "weights_2022-05-05_11-27-55.h5" (100.0%) ...
2
3--- Время выполнения: 0.373 сек. ---
4
5200

– 2 –

In [2]:
 1from oceanai.modules.lab.download import Download
 2
 3download = Download()
 4
 5download.path_to_save_ = './models'
 6download.chunk_size_ = 2000000
 7
 8res_download_file_from_url = download._download_file_from_url(
 9    url = 'https://clck.ru/32Nwdk',
10    force_reload = True,
11    out = True,
12    runtime = True,
13    run = False
14)
15res_download_file_from_url
[2]:
1[2022-10-16 19:33:05] Выполнение заблокировано пользователем ...
2
3403

Ошибки – 1 –

In [3]:
 1from oceanai.modules.lab.download import Download
 2
 3download = Download()
 4
 5download.path_to_save_ = './models'
 6download.chunk_size_ = 2000000
 7
 8res_download_file_from_url = download._download_file_from_url(
 9    url = 1,
10    force_reload = True,
11    out = True,
12    runtime = True,
13    run = True
14)
15res_download_file_from_url
[3]:
1[2022-10-16 19:33:01] Неверные типы или значения аргументов в "Download._download_file_from_url" ...
2
3400

– 2 –

In [4]:
 1from oceanai.modules.lab.download import Download
 2
 3download = Download()
 4
 5download.path_to_save_ = './models'
 6download.chunk_size_ = 2000000
 7
 8res_download_file_from_url = download._download_file_from_url(
 9    url = 'https://',
10    force_reload = True,
11    out = True,
12    runtime = True,
13    run = True
14)
15res_download_file_from_url
[4]:
 1[2022-10-16 19:33:10] Что-то пошло не так ... не удалось обработать указанный URL ...
 2
 3    Файл: /Users/dl/GitHub/oceanai/oceanai/modules/lab/download.py
 4    Линия: 257
 5    Метод: _download_file_from_url
 6    Тип ошибки: InvalidURL
 7
 8--- Время выполнения: 0.061 сек. ---
 9
10404

– 3 –

In [5]:
 1from oceanai.modules.lab.download import Download
 2
 3download = Download()
 4
 5download.path_to_save_ = './models'
 6download.chunk_size_ = 2000000
 7
 8res_download_file_from_url = download._download_file_from_url(
 9    url = 'https://www.iconfinder.com/icons/4375050/download/svg/4096',
10    force_reload = True,
11    out = True,
12    runtime = True,
13    run = True
14)
15res_download_file_from_url
[5]:
 1[2022-10-16 19:33:15] Загрузка файла "4375050_logo_python_icon.svg"
 2
 3[2022-10-16 19:33:15] Что-то пошло не так ... Не определен размер файла для загрузки ...
 4
 5    Файл: /Users/dl/GitHub/oceanai/oceanai/modules/lab/download.py
 6    Линия: 324
 7    Метод: _download_file_from_url
 8    Тип ошибки: InvalidContentLength
 9
10--- Время выполнения: 0.386 сек. ---
11
12404
download_file_from_url(url: str, force_reload: bool = True, out: bool = True, runtime: bool = True, run: bool = True) int[исходный код]

Загрузка файла из URL

Параметры
  • url (str) – Полный путь к файлу

  • force_reload (bool) – Принудительная загрузка файла из сети

  • out (bool) – Отображение

  • runtime (bool) – Подсчет времени выполнения

  • run (bool) – Блокировка выполнения

Результат

Код статуса ответа:

  • 200 - Файл загружен

  • 400 - Ошибка при проверке аргументов

  • 403 - Выполнение заблокировано пользователем

  • 404 - Не удалось скачать файл

Тип результата

int

Пример