requests_cache, BeautifulSoup, prettytable
Парсер предназначен для сбора информации о нововведениях Python и количестве статусов документов PEP.
За процесс парсинга отвечает библиотека BeautifulSoup
.
Именно с её помощью происходит выбор нужных данных. Вывод статусбара базируется на библиотеке
tqdm
, а вывод табличных значений в красивом виде происходит за счёт
prettytable
.
В целях экономии трафика и для проведения процесса тестирования и отладки было организовано кэширование запросов к
внешним ресурсам с помощью библиотеки requests_cache
. При
необходимости кэш можно очистить.
Клонируйте репозиторий, перейдите в папку, создайте виртуальное окружение и активируйте:
python3 -m venv env
. venv/bin/activate
Установить зависимости из файла requirements.txt:
(venv) python3 -m pip install --upgrade pip
(venv) pip install -r requirements.txt
Собирает ссылки на статьи о нововведениях.
Собирает информацию о версиях Python — номер, статус и ссылка на документацию.
Скачивает архив с документацией Python на ваш локальный диск. В директорию ./src/downloads/
Посчитывает количество PEP в каждом статусе и общее количество PEP; данные о статусе парсятся со страницы каждого PEP
-h, --help — выводит вспомогательную информацию о работе парсера
-c, --clear-cache — Удаляет кэш пред стартом
-o {pretty,file}, --output {pretty,file} — Дополнительные способы вывода данных. Параметр pretty выводит данные в терминале в оформленной таблице, параметр file сохраняет данные в csv файл.
◾ Через командную строку в директории src запустите скрипт:
python main.py MODE -ARGS
Где MODE — Название режима работы (из 4х доступных), а -ARGS — Перечисление необязательных аргументов
В проекте собираются логи с уровня INFO и сохраняются в директорию ./src/logs
Selivanov Dmitry