BS4 Parser PEP это парсер, удобно компилирующий информацию с официального сайта документации языка программирования Python: список ссылок на статьи по нововведениям различных версий Python, список ссылок на документацию по различным версиям языка, скачивание документации последней версии языка в формате PDF, сводные данные по PEP (Python Enhancement Proposals) языка Python.
- Парсинг данных с официального сайта документации Python
- Различные способы отображения данных
- Применение кешированных сессий
Клонируйте репозиторий на ваш компьютер, в локальном репозитории создайте и активируйте виртуальное окружение, обновите менеджер пакетов pip и установите зависимости из файла requirements.txt.
git clone <адрес репозитория>
python -m venv venv
python -m pip install --upgrade pip
pip install -r requirements.txt
Из директории src в командной строке запустите модуль main
с указанием режима работы парсера первым обязательным позиционным аргументом.
Доступны следующие режимы:
- whats_new (список статей по нововведениям)
- latest_versions (список документаций)
- download (скачивание документации)
- pep (отчёт по статусам PEP)
Парсинг производится из кешированной сессии. Для обновления кешированной сессии доступен опциональный аргумент -c или --clear-cache.
Для режимов whats_new и latest_versions также доступен выбор вывода нужной информации: - по умолчанию (без дополнительных аргументов): построчное выведение в командной строке
- с аргументом -o (или --output) pretty: вывод в командной строке в виде таблицы pretty table
- с аргумент -o (или --output) file: генерация csv файла в папку results.
Режим pep работает только с выдачей результата в файле csv с соответствующим названием. После успешного выполнения программы файл сохранится в папке results. Для примера, один файл, сгенерированный в ходе работы парсера в режиме pep уже присутствует в папке results.
# посмотреть список статей по нововведениям с выводом в терминале
python main.py whats-new
# посмотреть список документаций в терминале в формате pretty table с предварительной отчисткой кеша (данные заново загрузятся из Интернета)
python main.py latest-versions --clear-cache --output pretty
# сгенерировать таблицу csv с отчётом по текущим статусам PEP
python main.py pep
Дима Смолов