Skip to main content

A smart CLI weather tool: no coordinates needed, just name your location and go.

Project description

✨⛅ 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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

wthrcli-1.0.2.tar.gz (15.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

wthrcli-1.0.2-py3-none-any.whl (17.8 kB view details)

Uploaded Python 3

File details

Details for the file wthrcli-1.0.2.tar.gz.

File metadata

  • Download URL: wthrcli-1.0.2.tar.gz
  • Upload date:
  • Size: 15.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for wthrcli-1.0.2.tar.gz
Algorithm Hash digest
SHA256 a198c33a4cc490f28f21998e12cce069eb99e635b3daed49823db0bd96d01024
MD5 15e9439302a1197971d5837d548840af
BLAKE2b-256 809cd98a2e00453fae5e8aa174fbfecef5ecabb411b36900aa98fa3b3f18e80f

See more details on using hashes here.

File details

Details for the file wthrcli-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: wthrcli-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 17.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for wthrcli-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 87b6b4cbb10e6438203d54dae501ad761004274fe142af22ed360a965090b471
MD5 496258d9e9f00bb6ae50001cd5828388
BLAKE2b-256 2952c6b56703ecbe04b73519529082056e0e2bacea2b78c7c399af18b7fae98b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page