From 0256be554d41d25637f73150638ac29383fdf4d9 Mon Sep 17 00:00:00 2001 From: Ilia Miheev Date: Wed, 2 Jul 2025 11:46:33 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9E=D0=BF=D0=B8=D1=81=D0=B0=D0=BD=D0=BE=20?= =?UTF-8?q?=D0=BA=D0=B0=D0=BA=20=D1=80=D0=B0=D0=B1=D0=BE=D1=82=D0=B0=D1=82?= =?UTF-8?q?=D1=8C=20=D1=81=20ProgressBarManager?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 61 ++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 60 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index cd0231b..0e88ce7 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ Во время парсинга часто приходится скачивать html-страницы, работать с json- и csv-файлами. Эта библиотека призвана облегчить написание кода для такого рода задач. Библиотека создавалась для удобства работы во время парсинга, но ничто не мешает использовать её просто для работы с json и csv. -В библиотеке есть три класса для отдельных работ: Pars для работы с запросами и bs4, JsonManager для работы с json и CsvManager для работы с csv. +В библиотеке есть три класса для отдельных работ: Pars для работы с запросами и bs4, JsonManager для работы с json и CsvManager для работы с csv. Так же есть один класс для улучшения пользовательского опыта — ProgressBarManager, который создаёт прогресс-бар Установить библиотеку: @@ -164,4 +164,63 @@ rows = c.getRows('./data.csv') # выводим строки таблицы c.pprint(rows) +``` + +## Работа с ProgressBarManager + +Класс создаёт прогресс-бар для лучшей видимости выполнения кода. Принимает пять аргументов: + +1. **max**: обязательный параметр, который указывает максимальное значение итераций в прогресс-баре + +2. **message**: сообщение перед прогресс-баром +3. **color**: цвет прогресс-бара +4. **fill**: заполнитель для сделанной части +5. **width**: размер прогресс-бара в символах + +```py +from ipars import ProgressBarManager + +bar = ProgressBarManager(100) # Здесь max установлен как 100 +``` + +### Коротко о методах + +1. Метод **next** запускает следущую итерацию прогресс-бара + +2. Метод **finish** завершает работу прогресс-бара + +```py +# Импортируем библиотеки +from ipars import ProgressBarManager +from time import sleep + +maxValue = 300 +# Создаём прогресс-бар по умолчанию +bar = ProgressBarManager(maxValue) + +# Имитируем работу +for _ in range(maxValue//2): + sleep(0.1) + bar.next() + +# Выключаем прогресс-бар +bar.finish() + + + +# Создаём более кастомизированный прогресс-бар +bar = ProgressBarManager( + maxValue, + message='Процесс скачивания', + color='red', + width=50 +) + +# Имитируем работу +for _ in range(maxValue): + sleep(0.1) + bar.next() + +# Выключаем прогресс-бар +bar.finish() ``` \ No newline at end of file