Skip to main content

✨⛅ weather-cli

Командная утилита для получения текущей погоды в любом месте.

📋 Содержание

🛠 Технологический стек

  • Typer — для создания удобного интерфейса командной строки (CLI). Позволяет легко определять аргументы и опции (например, название места и тип прогноза), автоматически генерирует подсказки и обрабатывает ввод пользователя.
  • Niquests — современный HTTP-клиент (форк requests). Используется для отправки запросов к Nominatim и Open-Meteo и получения данных о месте и погоде, соответственно.
  • Pydantic — для валидации и парсинга данных. С его помощью мы определяем структуру ответа API и автоматически преобразуем JSON в удобные объекты Python с проверкой типов.

🌐 Используемые API

  • Nominatim — геокодирование координат
  • Open-Meteo — получение прогноза по координатам

⚠️ Ограничения API

  • Nominatim — Максимум 1 запрос в секунду
  • Open-Meteo — Не более 10,000 запросов в день, 5,000 в час и 600 в минуту

🔮 Использование

Возможные команды weather-cli можно увидеть прописав --help, так же можно использовать --help и у отдельных команд, чтобы увидеть их описание

wthr --help

Доступные команды:

  • weather – Показать прогноз погоды для указанного места.
  • set – Сохранить место в конфиг, чтобы в дальнейшем автоматически использовать его для получения погоды
  • get – Проверить текущее место в конфиге
  • clear – Очистить конфиг и кеш

Также доступно использование просто wthr

Использование исполняемого файла на linux

Выбрать подходящую версию из релизов

  • wthr — самодостаточный исполняемый файл
  • whtr.pyz — исполняемый файл, который требует установленный python для запуска (требуется лишь интерпретатор, все зависимости он хранит в себе)
  1. поместить исполняемый файл в /usr/local/bin
  2. запускать командой wthr / wthr.pyz

Установка через pip

pip install wthrcli
python -m wthr
wthr

🏗️ Сборка

Сборка под linux

Создание и активация виртуального окружения python, установка зависимостей для сборки

make setup

Сборка исполняемых файлов

make build
make build-dist # wheel
make build-exe # самодостаточный
make build-shiv # файл .pyz

Результат сборки лежит в папке /dist

Metadata

Release files for wthrcli 1.0.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for wthrcli 1.0.2
File Size Uploaded
wthrcli-1.0.2.tar.gz 15.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for wthrcli 1.0.2
File Interpreter ABI Platform
wthrcli-1.0.2-py3-none-any.whl Python 3 none any Details

Total release size: 33.4 kB

Release files / wthrcli-1.0.2.tar.gz

Download URL wthrcli-1.0.2.tar.gz
Size 15.6 kB
Tags Source
SHA-256 checksum
How to use checksums
a198c33a4cc490f28f21998e12cce069eb99e635b3daed49823db0bd96d01024
BLAKE2b-256 checksum
How to use checksums
809cd98a2e00453fae5e8aa174fbfecef5ecabb411b36900aa98fa3b3f18e80f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Release files / wthrcli-1.0.2-py3-none-any.whl

Download URL wthrcli-1.0.2-py3-none-any.whl
Size 17.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
87b6b4cbb10e6438203d54dae501ad761004274fe142af22ed360a965090b471
BLAKE2b-256 checksum
How to use checksums
2952c6b56703ecbe04b73519529082056e0e2bacea2b78c7c399af18b7fae98b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Release history Release notifications | RSS feed

This release

1.0.2 This release

2 release files

1.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page